输入内容包含NaN,无穷大或dtype('float64')太大的值
这是我使用scikit库运行逻辑回归代码时出现的错误。
我尝试删除nan和无限值,但是它不起作用
df=pd.read_csv("bots.csv")
df1=pd.read_csv("genuine.csv")
df1.head
np.where(df.values >= np.finfo(np.float64).max)
np.where(df1.values >= np.finfo(np.float64).max)
np.any(np.isnan(df))
np.any(np.isnan(df1))
np.all(np.isfinite(df))
np.all(np.isfinite(df1))
df1=df1[:-92] #drop from bottom
f_to_f_human=df['friend_to_folowers_ratio']
f_to_f_bot=df1['friend_to_folowers_ratio']
df1['Y']= 1 #1 for bot
df['Y'] = 0 # 0 for human
vx=df['Y']
vy=df1['Y']
A = pd.concat([df1, df])
A
y=A.iloc[:,-1].values
X=A.drop(['Y'], axis=1)
X=A.iloc[:].values
X_train,X_test,y_train, y_test=
train_test_split(X,y,test_size=0.2,random_state=42)
model=LogisticRegression(penalty='l2',C=1)
print(X_train)
model.fit(X_train,y_train)
我不希望有任何错误,但是会出现错误
输入内容包含NaN,无穷大或dtype('float64')太大的值
答案 0 :(得分:1)
尝试将此代码添加到您的代码中
A = pd.concat([df1, df])
A.dropna(inplace=True)
y=A.iloc[:,-1].values
X=A.drop(['Y'], axis=1)
X=A.iloc[:].values
X_train,X_test,y_train, y_test=
train_test_split(X,y,test_size=0.2,random_state=42)
model=LogisticRegression(penalty='l2',C=1)
print(X_train)
model.fit(X_train,y_train)
A.dropna(inplace = True)应该删除所有NaN值
另一个提示是:
A.dtypes
检查您的列采用哪种格式