input: Write a function to read in a tweet and remove all punctuation, special characters and stopwords. The function should return the cleaned tweet as a list of words. Stopwords should be removed based on the nltk corpus.
  import re
  from nltk.corpus import stopwords
  
  def clean_tweet(tweet):
      tweet_clean = re.sub(r'[^\w\s]','',tweet) #remove punctuation
      tokens = tweet_clean.split() #split string into individual words 
      stop_words = set(stopwords.words("english")) #get list of stopwords
      filtered_tokens = [w for w in tokens if not w in stop_words] #remove stopwords
      return filtered_tokens
      
  assert clean_tweet("I'm so excited to be going to the #MuseumTour! #BigDay #travel")==['excited','going','the', 'MuseumTour', 'BigDay', 'travel']
  assert clean_tweet("This is an example tweet! #test")==['example', 'tweet', 'test']
  assert clean_tweet("Hello, how are you?")==['Hello', 'how', 'you']
  assert clean_tweet("What's up? #newyear #celebrate")==['What', 'up', 'newyear', 'celebrate']
  assert clean_tweet("")==[]
output: import re
  from nltk.corpus import stopwords
  
  def clean_tweet(tweet):
      tweet_clean = re.sub(r'[^\w\s]','',tweet)
      tokens = tweet_clean.split()
      stop_words = set(stopwords.words("english"))
      filtered_tokens = [w for w in tokens if not w in stop_words]
      return filtered_tokens