问题描述
我有几组更正的功能。我将每组功能组合在一起以创建四个新功能。下面的示例:
# Combine three features by multiplying
df_numeric['count'] = df_numeric['word_count']*df_numeric['unique_words']*df_numeric['stopwords']
# Drop the old features
df_numeric = df_numeric.drop(columns=['word_count','unique_words','stopwords'])
# Create 3 more features
df_numeric['count_sq2'] = df_numeric['count']**2
df_numeric['count_sq3'] = df_numeric['count']**3
df_numeric['count_sqrt'] = np.sqrt(df_numeric['count'])
由于为每个组编写代码很麻烦,因此我正在考虑编写一个函数。
def create_features(dataframe,columns,feature_1,feature_2,feature_3,feature_4):
for col in columns:
dataframe[feature_1] *= dataframe[col]
dataframe[feature_2] = dataframe[feature_1]**2
dataframe[feature_3] = dataframe[feature_1]**3
dataframe[feature_4] = np.sqrt(dataframe[feature_1])
dataframe = dataframe.drop(columns,axis=1)
return dataframe
但是,它会引发KeyError:“计数”。
columns = ['word_count','stopwords']
create_features(df_numeric,'count','count_sq2','count_sq3','count_sqrt')
------------------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-25-a71d19af6d81> in <module>
1 columns = ['word_count','stopwords']
2
----> 3 create_features(df_numeric,'count_sqrt')
还有更好的方法吗?谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)