我想在现有数据框中添加一个附加列,该数据框的长度为'seller_name'列作为其值。
输出应如下:
seller_name name_length
-------------|-------------
Rick | 4
Hannah | 6
但是,我很难获得正确的代码。
df['name_length'] = len(df['seller_name'])
只给我整列的长度(6845) 并且
df['nl'] = df[len('seller_name')]
引发KeyError。
有没有人知道实现目标的正确命令?
非常感谢!
答案 0 :(得分:10)
使用.str
字符串访问器在DataFrame上执行字符串操作。特别是,您需要.str.len
:
df['name_length'] = df['seller_name'].str.len()
结果输出:
seller_name name_length
0 Rick 4
1 Hannah 6
答案 1 :(得分:2)
说你有这个数据:
y_1980 = pd.read_csv('y_1980.csv', sep='\t')
country y_1980
0 afg 196
1 ago 125
2 alb 23
如果您想计算可以使用的任何列的长度:
y_1980['length'] = y_1980['country'].apply(lambda x: len(x))
print(y_1980)
country y_1980 length
0 afg 196 3
1 ago 125 3
2 alb 23 3
这样您就可以计算出所需列数的长度。