我有一个包含IMDB电影评级数据的csv文件。该文件有27个特性和1个目标变量。我已经附上了SampleData。数据集也可以从KaggleData下载。我了解到python的sklearn包要求所有的数据都是数字。那么如何使用这些数据进行回归分析呢?现在我使用下面的代码,但它说"一些导演名称"不能转换为float。
import pandas as pd
from sklearn.linear_model import LinearRegression
df = pd.read_csv('D:Machine LearningFinalmovie_metadata.csv')
feature_cols = [
"director_facebook_likes",
"cast_total_facebook_likes",
"movie_facebook_likes",
"facenumber_in_poster",
"gross",
"num_critic_for_reviews",
"num_voted_users",
"num_user_for_reviews",
"duration",
"title_year",
"content_rating",
"budget",
"director_name"]
X = df[feature_cols]
y = df.imdb_score
lm = LinearRegression()
lm.fit(X, y)
print (lm.intercept_)
print (lm.coef_)
最简单的是pd.get_dummies()。您还可能遇到one-hot-encoding