可以使用pandas库中的apply方法来实现从另一列创建一个包含字典计数的pandas列。
首先,我们需要导入pandas库:
import pandas as pd
接下来,假设我们有一个名为dataframe
的数据框,其中有两列col1
和col2
:
dataframe = pd.DataFrame({'col1': ['a', 'b', 'a', 'c', 'b'], 'col2': ['x', 'y', 'y', 'x', 'x']})
我们要创建一个新的列col3
,其中包含col2
中每个元素的计数。可以按以下步骤进行操作:
# 使用apply方法,对每个元素执行计数操作
dataframe['col3'] = dataframe['col2'].apply(lambda x: {i: dataframe['col2'].value_counts()[i] for i in x})
# 输出结果
print(dataframe)
执行以上代码,将得到以下结果:
col1 col2 col3
0 a x {'x': 2, 'y': 1}
1 b y {'x': 2, 'y': 1}
2 a y {'x': 2, 'y': 1}
3 c x {'x': 2, 'y': 1}
4 b x {'x': 2, 'y': 1}
在结果中,col3
列包含了每个元素在col2
列中的计数结果,以字典的形式呈现。字典的键表示唯一的元素值,而对应的值表示该元素在col2
列中出现的次数。
这是一个使用pandas库进行字典计数的简单示例,适用于处理数据框中的列。希望对你有帮助!
领取专属 10元无门槛券
手把手带您无忧上云