python - 如何计算pandas数据框中单元格内的行数,这些行不是空行

标签 python pandas

对于我拥有的数据,如下所示(示例):

import pandas as pd

MyDict = {'text' : ['\nbla bla text \n\n bla bla another text \n # bla text \n\n\n bla bla another text', 
                    '\nbla bla bla text2 \n\n\ bla bla bla another text it is \n\n  # bla bla bla text \n bla bla it is another text']}

df = pd.DataFrame(MyDict)

我想计算 text 列中每个单元格中不为空('\n')的总行数,这样我应该能够获得一个看起来像这样的数据框这个:

text                                                                  total_lines
'bla bla text \n\n bla bla another text \n # bla text \n\n\n...'      4
'bla bla bla text2 \n\n\ bla bla bla another text it is \n\n...'      4

text 列的单元格 1 中有 4 个非空行,单元格 2 中有 4 个非空行,依此类推...

我尝试在 stackoverflow 上搜索,但找不到任何相关建议。有人可以帮我解决这个问题吗?

最佳答案

你可以尝试这样的事情:

df['total_lines'] = df['text'].str.split('\n').apply(lambda x: len(x) - x.count(''))

输出:

                                                 text   total_lines
0   \nbla bla text \n\n bla bla another text \n # ...             4
1   \nbla bla bla text2 \n\n\ bla bla bla another ...             4

每个字符串都被分成几行,并从列表中所有元素的数量中减去空值。它为我们提供了非空值的数量。

关于python - 如何计算pandas数据框中单元格内的行数,这些行不是空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72304786/

相关文章:

Python - 在 zip() 中迭代时字节隐式转换为 int

python - 广播和连接参差不齐的张量

python - Django CMS "No module named html5lib"

python - Python 中带有渐变背景的点图?

python - 重新计算平均值和标准平均值(Python,Pandas)

python - Pandas 数据框。添加一个额外的行标题合并所有列

python - 使用 urllib2 从 URL 写入 PDF 文件

python - 替换一系列 Pandas 中的值

python - 从数据框中删除反向重复项

python - 通过另一个索引或值过滤 DataFrame 索引