栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

df.apply之后,dropna() got an unexpected keyword argument ‘subset‘

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

df.apply之后,dropna() got an unexpected keyword argument ‘subset‘

在使用df进行:

df.dropna(subset=['keyword'])
df.drop_duplicates(subset=['keyword'])

报错:

'subset' not working for drop_duplicates pandas dataframe

或者
dropna() got an unexpected keyword argument 'subset'

是因为 在此之前df经过了apply函数操作,使得df数据不再是dataframe结构,而是变成了Series数据结构。

如下:

def d(x):
	s = x['keyword'][0]
	a = ['1','2']
	if s not in a:
		return x
    else:
        return None
sort_data = sort_data.apply(lambda x: d(x), axis=1)
sort_data = sort_data.dropna(subset=['keyword'])

就会报错:dropna() got an unexpected keyword argument 'subset'
原因是在sort_data = sort_data.apply(lambda x: d(x), axis=1)之后,sort_data就是pd.series结构了(至于为什么我也不知道,可能和df数据有关系)

所以为了防止这种情况,直接改用map进行df的列值修改。如下:

def d(x):
	s = str(x[0])
	if s not in a:
		return x
    else:
        return None
sort_data['keyword'] = sort_data['keyword'].map(d)
sort_data = sort_data.dropna(subset=['keyword'])
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1012944.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号