我有以下系列
2 [2, 2, 1, 2, 0, 0, 5, 8, 7, 1, 2, 1, 0, 8, 4, ...
5 [3, 1, 5, 0]
8 [9, 0, 0, 0, 9, 0, 6, 1, 7, 0, 1, 4, 6, 1, 3, ...
9 [1, 1, 0, 8, 0, 0, 2, 9, 8, 6, 0, 3, 0]
11 [1, 0, 0, 2, 0, 0, 0, 0, 1, 1, 8, 7, 5, 7, 5, ...
我想创建一个新的系列,以保留索引(2、5、8、9、11),其值等于每行中列表的长度
结果将是
2 25
5 4
8 20
9 13
11 18
答案 0 :(得分:0)
list(map(lambda x: (x, len(object[x])), indices))
它有点伪代码,因为您没有指定数据类型或变量名,但是一般的方法是您有一个由某个索引x
索引的数据对象。因此,遍历所有x
并获得结果数据结构的length属性。
编辑:由于您已声明是熊猫,所以请使用一系列整数列表进行尝试:
import pandas as pd
S = pd.Series([[1,2,3], [2,3]], index=[2,4])
print(S)
# 2 [1, 2, 3]
# 4 [2, 3]
lengths = list(map(lambda x: len(S[x]), S.index))
S2 = pd.Series(lengths, index=S.index)
print(S2)
# 2 3
# 4 2