input: Write a function to classify positive and negative sentiment in tweets. The function should take a list of tweets as input and return a list of sentiment classifications where each classification is either "Positive" or "Negative". The algorithm should first clean each tweet using the preprocessing function, vectorize the cleaned tweet, and then predict its sentiment using the predict_sentiment function.
  
  def sentiment_analysis(tweets):
      # Initialize a list to store the result 
      results = [] 
  
      # Iterate through each tweet
      for tweet in tweets:
          # Clean the tweet 
          tweet = preprocessing(tweet)
  
          # Vectorize the tweet and obtain the prediction 
          tweet_vector = vectorize(tweet)
          prediction = predict_sentiment(tweet_vector)
  
          # Append the prediction to the result list
          if prediction == 1:
              results.append("Positive")
          elif prediction == 0:
              results.append("Negative")
  
      return results
  
  assert sentiment_analysis(["I love programming!", "This sucks"]) == ["Positive", "Negative"]
  assert sentiment_analysis(["Python is great", "I hate this"]) == ["Positive", "Negative"]
  assert sentiment_analysis([]) == []
  assert sentiment_analysis(["Feeling excited for the weekend"]) == ["Positive"]
  assert sentiment_analysis(["Nothing but sadness"]) == ["Negative"]
output: def sentiment_analysis(tweets):
      results = [] 
      for tweet in tweets:
          tweet = preprocessing(tweet)
          tweet_vector = vectorize(tweet)
          prediction = predict_sentiment(tweet_vector)
          if prediction == 1:
              results.append("Positive")
          elif prediction == 0:
              results.append("Negative")
      return results