如何找到 pandas dataframe 字符串列中的最大单词数?

Sea*_*hon 2 python dataframe pandas

我有一个带有一列字符串的数据框。我试图找到(a)列中的最大单词数和(b)包含最大单词数的字符串的行。

我执行以下操作:

import pandas as pd

something = ["Hello how are you", "I am doing great", "Lets go camping"]

test = pd.DataFrame(something)
test.columns = ["Response"]

length_of_the_messages = test["Response"].str.split("\\s+")
print(length_of_the_messages)
print(length_of_the_messages.len().max())
Run Code Online (Sandbox Code Playgroud)

但这会生成一个错误,指出Seriesdoes has no attribute len。如何获取列中字符串的最大单词数及其行索引?

And*_*ely 5

您可以使用.strand 作为索引.idxmax

import pandas as pd

something = ["Hello how are you", "I am doing great", "Lets go camping"]

test = pd.DataFrame(something)
test.columns = ["Response"]

length_of_the_messages = test["Response"].str.split("\\s+")

print(length_of_the_messages)
print("Max number of words = ", length_of_the_messages.str.len().max())
print("Index = ", length_of_the_messages.str.len().idxmax())
Run Code Online (Sandbox Code Playgroud)

印刷:

0    [Hello, how, are, you]
1     [I, am, doing, great]
2       [Lets, go, camping]
Name: Response, dtype: object

Max number of words =  4
Index =  0
Run Code Online (Sandbox Code Playgroud)