Это сообщение об ошибке Length of values does not match length of index
означает, что один из столбцов, которые вы пытаетесь добавить к кадру данных, не имеет ту же длину, что и исходный кадр данных. Если вы хотите отладить это, вы можете сохранить текст, идентификатор, дату, лайки и ретвиты в отдельные списки и сравнить их длину.
Глядя на ваш код в целом, было бы лучше перебрать курсор. Обратите внимание, что если вы сохраняете свой существующий код, вам не нужно преобразовывать все свои списки в np.array, поскольку pandas сделает это за вас.
def process_tweet(tweet, default_value=None):
val = {}
val['id'] = tweet.id if tweet.id else default_value
val['created_at'] = tweet.created_at if tweet.date else default_value
val['likes'] = tweet.favorite_count if tweet.favorite_count else default_value
val['retweets'] = tweet.retweet_count if tweet.retweet_count else default_value
return val
q = "SpaceX OR SolarCity OR Tesla OR Starlink OR Elon Musk"
posts = [process_tweet(tweet) for tweet in
tweepy.Cursor(api.search, q=(q), lang="en", since="2020-04-13", tweet_mode="extended").items(500)]
df = pd.DataFrame(posts)