为了账号安全,请及时绑定邮箱和手机立即绑定

Pandas系列包含属性错误:“系列”对象没有属性“包含”

Pandas系列包含属性错误:“系列”对象没有属性“包含”

噜噜哒 2022-08-16 18:57:34
我的数据data = [{"content": "1", "title": "chestnut", "info": "", "time": 1578877014},     {"content": "2", "title": "chestnut", "info": "", "time": 1579877014},     {"content": "3", "title": "ches", "info": "", "time": 1582877014},     {"content": "aa", "title": "ap", "info": "", "time": 1582876014},     {"content": "15", "title": "apple", "info": "", "time": 1581877014},     {"content": "16", "title": "banana", "info": "", "time": 1561877014},     ]我的代码index=[i['content'] for i in data]s=pd.Series(data,index)print((s[s.str.get('title').contains('ches',regex=True)]))发生错误AttributeError: 'Series' object has no attribute 'contains'我想达到这个效果,我如何使用包含contais文档:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.str.contains.html#pandas.Series.str.contains。我希望数据是[{"content": "1", "title": "chestnut", "info": "", "time": 1578877014},{"content": "2", "title": "chestnut", "info": "", "time": 1579877014},{"content": "3", "title": "ches", "info": "", "time": 1582877014},]
查看完整描述

1 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

最好有一个与数据兼容的结构。使用数据帧。


DataFrame 提供了对列和行的更好操作。您的数据是二维的,即它具有项目,然后每个项目都具有带有值的属性。因此,适合像DataFrame这样的2D结构,而不是像Series这样的1D结构。


>>> df = pd.DataFrame(data)

>>> df

  content     title info        time

0       1  chestnut       1578877014

1       2  chestnut       1579877014

2       3      ches       1582877014

3      aa        ap       1582876014

4      15     apple       1581877014

5      16    banana       1561877014


>>> df[df.title.str.contains('ches')]

  content     title info        time

0       1  chestnut       1578877014

1       2  chestnut       1579877014

2       3      ches       1582877014

对于系列(不推荐)


s[s.apply(lambda x: x.get('title')).str.contains('ches')]


查看完整回答
反对 回复 2022-08-16
  • 1 回答
  • 0 关注
  • 92 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信