首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >熊猫所有长度<2的细胞

熊猫所有长度<2的细胞
EN

Stack Overflow用户
提问于 2020-10-18 07:03:20
回答 3查看 127关注 0票数 2

我想获得所有的数据行,在那里,如果任何云的长度小于2。

例如:

代码语言:javascript
复制
df = pd.DataFrame({"col1":["a","ab",""],"col2":["bc","abc", "a"]})

   col1 col2
0    a   bc
1   ab  abc
2         a

如何获得此输出:

代码语言:javascript
复制
   col1 col2
0    a   bc
2         a
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-10-18 07:20:12

让我们尝试使用stack重塑,然后使用str.len计算长度,并使用lt + any创建布尔掩码

代码语言:javascript
复制
df[df.stack().str.len().lt(2).any(level=0)]

代码语言:javascript
复制
  col1 col2
0    a   bc
2         a
票数 1
EN

Stack Overflow用户

发布于 2020-10-18 07:15:17

您可以使用熊猫系列的len()方法:

代码语言:javascript
复制
for col in df.columns:
    df[col] = df[col][df[col].str.len() < 3]
df = df.dropna()
票数 0
EN

Stack Overflow用户

发布于 2020-10-18 07:52:49

在这里,一份清单理解可能会有所帮助:

代码语言:javascript
复制
df.loc[[not any(len(word) > 2 for word in entry)
        for entry in df.to_numpy()]
       ]

        col1    col2
   0    a       bc
   2            a
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64410609

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档