我正在使用KNeighborsClassifier
对某些值进行分类:
arr = classifier_3NN.predict(testData_df)
len(arr)
10960
我想将此数组分配给DataFrame中的一列,我已检查过&它的大小相同:
len(df[df['events']=='NaN']['events'])
10960
当我执行以下命令时,数组值不在预期的列中:
df[df['events']=='NaN']['events'] = arr
任何人都可以看到我做错了吗?
答案 0 :(得分:1)
df.ix[df['events'].isnull(), 'events'] = arr
但是,如果需要NaN
更改arr
值更好,请使用Series
arr
创建的arr = [5,7,9]
df = pd.DataFrame({'events':[np.nan, 1, np.nan]})
print (df)
events
0 NaN
1 1.0
2 NaN
df['events'] = df['events'].fillna(pd.Series(arr, index=df.index))
print (df)
events
0 5.0
1 1.0
2 9.0
:
struct strlist {
char * const data;
struct strlist *next;
}