【发布时间】:2021-06-08 09:43:21
【问题描述】:
我有以下df:
values_list = [[15, {'num':[0]}, 100], [20, {'num':[0]}, 50], [25, {'num':[0]}, 80],
[45, {'num':[0], 'option':[1]}, 48], [40, {'num':[0]}, 70], [41, {'num':[0]}, 90],
[51, {'num':[0]}, 111]]
df = pd.DataFrame(values_list, columns=['Field_1', 'Field_2', 'Field_3'])
Fields_2 是 dict 的一列。
我想执行 len 跟随功能并将其放入新列 如果我这样做:
len(df.Field_2[3])
输出 = 2(其他索引为 1)
我想要的结果是如下的 DF
我尝试了以下 lambda 函数,但它似乎不起作用,因为我得到的列是列的 len 而不是行
df = df.assign(elem=lambda x: (len(x['Field_2'])))
我本来希望会有更多这样的东西,但这会产生错误
df = df.assign(elem=lambda x: (x[len(x['Field_2'])]))
有人能告诉我如何解决这个问题吗?
【问题讨论】:
-
df.assign(elem=df['Field_2'].apply(len))
标签: python pandas dataframe lambda