社区!我真的很感谢我在学习python的过程中得到的所有支持!
我得到了以下 Dataframe :
d = {'name': ['john', 'mary', 'james'], 'area':[['IT', 'Resources', 'Admin'], ['Software', 'ITS', 'Programming'], ['Teaching', 'Research', 'KS']]}
df = pd.DataFrame(data=d)
我的目标是:
换句话说,如果单词的长度在列'area'>3的列表中,请删除它们。
我正在尝试这样的事情,但我真的被卡住了
处理这种情况的最佳方法是什么?
再次感谢!!
3条答案
按热度按时间r1zk6ea11#
结合
.map
具有列表理解能力:解释:
raogr8fs2#
您可以展开所有列表,然后继续筛选
str
长度,然后通过使用list
:mfpqipee3#
在构建 Dataframe 之前。
一种简单有效的方法是创建一个新的键列表:“area”,其中只包含长度大于3的字符串。例如:
在构建 Dataframe 之后。
如果数据位于数据框中,则可以使用“Map”功能: