首页 > 解决方案 > 包含字典的数据框列上的字典操作

问题描述

我的一个数据框df1有一列WR,每一行都有一个字典 -

WR

----

{'M-NET':1, 'C-VTR':2, 'I-INK':9}

{'H-NKG':6, 'M-NET':2, 'C-VTR':2}

{'N-NOC':7, 'I-INK':4}

{'L-TKP':4, 'C-VTR':3, 'H-NKG':3, 'M-NET':9}

{'M-NET':1, 'C-VTR':4}

我怎样才能对这一行进行字典操作。例如。我想制作另一列,其中包含WR. 或者,我想得到这本字典所有值的总和。

我试过了 -

df1['WR#'] = df1['WR'].apply(lambda x: len(x.to_dict().values()))

df1['WR#'] = len(df1['WR'].str.split(', '))

但这些对我不起作用。

我需要一个WR#给我的专栏

3
3
2
4
2

标签: python-3.xpandasdataframe

解决方案


如果您需要长度,请尝试

df['WR'].str.len()
0    3
1    3
2    2
3    4
4    2
dtype: int64

如果您需要sum

pd.DataFrame(df['WR'].tolist()).sum(1)
0    12.0
1    10.0
2    11.0
3    19.0
4     5.0
dtype: float64

推荐阅读