对于当前项目,我试图从数值表中排除所有空值。
应用dropna()
命令“删除”所有不包括数字的值时,我收到以下消息:AttributeError: module 'pandas' has no attribute 'dropna'
。
是否有任何巧妙的方法可以使它运行?相应的代码如下所示:
df['Rating_Recommend'] = pd.dropna(df['Rating_Recommend'])
df['Rating_Recommend'] = pd.to_numeric(df['Rating_Recommend'])
rating_recommend = df.Rating_Recommend.mean()
print(rating_recommend)
答案 0 :(得分:1)
您可以试试吗? df['Rating_Recommend'].dropna(inplace=True)
答案 1 :(得分:1)
不需要使用pd对象来调用dropna()函数。您可以直接在数据框中使用它。
class example_class(object):
def function_1(self, list1):
a = False
do some stuff...
print a
def function_2(self, list2):
for item in list2:
self.function_1(item)
var = example_class()
var.function_2([element1, element2, ...])
检查文档以获取更多选项。
答案 2 :(得分:1)
dropna()
是DataFrame / Series方法,而不是模块的功能。因此,您需要执行以下操作:
df['Rating_Recommend'].dropna()
但是,那没有意义
df['Rating_Recommend'] = df['Rating_Recommend'].dropna()
相反,应从代码中执行以下操作:
df['Rating_Recommend'] = pd.to_numeric(df['Rating_Recommend'], errors='coerce')
rating_mean = df['Rating_Recommend'].mean()
答案 3 :(得分:1)
应为:
df['Rating_Recommend'] = df['Rating_Recommend'].dropna()
或
df['Rating_Recommend'].dropna(inplace=True)
是因为dropna
是pd.DataFrame
和pd.Series
的方法。就您而言,df['Rating_Recommend']
是熊猫系列。
答案 4 :(得分:1)
有很多可以使用dropna()的选项,我建议您检查一下!
# Here are all parameters for dropna(). U won't be needing any to just get rid
#of "Nan" and null values, but they do have useful functionalities
DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
这应该完成您的要求:
df['Rating_Recommend'].dropna(inplace=True)
我希望您检查该文档,您会发现它真的很有帮助。 https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.dropna.html