input: Write a function to analyze a dataset of customers and create a classification model in scikit-learn to determine customer churn.
  
  def churn_prediction(data):
      import pandas as pd
      from sklearn.ensemble import RandomForestClassifier
      from sklearn.model_selection import train_test_split
  
      # Select features
      X = data.drop(['churn'], axis=1)
  
      # Select targets
      y = data['churn']
  
      # Split the data into training and testing sets
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
  
      # Create the model
      model = RandomForestClassifier()
  
      # Train the model
      model.fit(X_train, y_train)
  
      # Make predictions and measure accuracy
      predictions = model.predict(X_test)
      return model.score(X_test, y_test)
  
  # Test cases
  data = pd.DataFrame({
      'feature1': [0, 1, 1, 0, 1],
      'feature2': [1, 0, 1, 1, 0],
      'churn': [0, 1, 1, 0, 0]
  })
  assert churn_prediction(data) >= 0.0
  assert churn_prediction(data) <= 1.0
  data = pd.DataFrame({
      'feature1': [0, 1, 1, 0, 1],
      'feature2': [1, 0, 1, 1, 0],
      'churn': [1, 1, 1, 1, 1]
  })
  assert churn_prediction(data) >= 0.0
  assert churn_prediction(data) <= 1.0
  data = pd.DataFrame({
      'feature1': [0, 1, 1, 0, 1],
      'feature2': [1, 0, 1, 1, 0],
      'churn': [0, 0, 0, 0, 0]
  })
  assert churn_prediction(data) >= 0.0
  assert churn_prediction(data) <= 1.0
output: 
  def churn_prediction(data):
      import pandas as pd
      from sklearn.ensemble import RandomForestClassifier
      from sklearn.model_selection import train_test_split
  
      X = data.drop(['churn'], axis=1)
      y = data['churn']
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
      model = RandomForestClassifier()
      model.fit(X_train, y_train)
      predictions = model.predict(X_test)
      return model.score(X_test, y_test)
  