python - pandas向量化运算获取字符串长度

标签 python pandas dataframe vectorization string-length

<分区>

我有一个 Pandas 数据框。

df = pd.DataFrame(['Donald Dump','Make America Great Again!','Donald Shrimp'],
                   columns=['text'])

我喜欢的是 Dataframe 中的另一列,它具有“文本”列中字符串的长度。

对于上面的例子,它将是

                        text  text_length
0                Donald Dump           11
1  Make America Great Again!           25
2              Donald Shrimp           13

我知道我可以遍历它并获取长度,但是有什么方法可以向量化这个操作吗?我有几百万行。

最佳答案

使用str.len :

print (df.text.str.len())                   
0    11
1    25
2    13
Name: text, dtype: int64

示例:

import pandas as pd

df = pd.DataFrame(['Donald Dump','Make America Great Again!','Donald Shrimp'],
                   columns=['text'])
print (df)
                        text
0                Donald Dump
1  Make America Great Again!
2              Donald Shrimp

df['text_length'] = (df.text.str.len())                   
print (df)
                        text  text_length
0                Donald Dump           11
1  Make America Great Again!           25
2              Donald Shrimp           13

关于python - pandas向量化运算获取字符串长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37687806/

相关文章:

python - 从 stackoverflow 中的问题重新创建 pandas 数据框

python - 我如何检查调用参数是否会随 unittest.mock 更改

python - 为什么我不能在 python CMD 模块中使用彩色提示?

python-2.7 - 在 Pandas 中打印特定的行和列

python - Pandas 是否有一种 Pythonic 方式将新的分层列添加到平面列 Dataframe

python - 如何用最少的代码创建过滤后的 DataFrame

python - 根据另一个特定列显示特定列的缺失值

python - Django以不正确的格式将数据保存在mysql中

python - 如何在 Python 中使用循环中的收敛标准来生成矩阵

python - 如何使用正则表达式在 Pandas 数据框中获取字符串