【发布时间】:2019-03-14 09:50:32
【问题描述】:
最近我一直在尝试映射一些值,所以我正在尝试创建一个字典来做到这一点。奇怪的是我的 DataFrame 有一个由列表组成的列,而 DataFrame 与列表总是有点尴尬。 DataFrame 的结构如下:
rules procedure
['10','11','12'] 1
['13','14'] 2
['20','21','22','24'] 3
所以我想创建一个字典,将“10”映射到 1,将“14”映射到 2,依此类推。我尝试了以下方法:
dicc=dict()
for j in df['rules']:
for i,k in zip(j,df.procedure):
dicc[i]=k
但这并没有成功。可能与索引有关。我错过了什么?
编辑:我正在尝试创建一个将值“10”、“11”、“12”映射到 1 的字典; '13','14' 到 2; '20','21','22','24' 到 3,所以如果我输入dicc['10'] 我得到1,如果我输入dicc['22'] 我得到3。显然,实际的 DataFrame 相当大,我无法手动完成。
【问题讨论】:
-
我会从 MVCE 开始,包括输入/输出/预期输出。
-
只是想确保我完全理解。对应的
procedure列中的值表示您想要处理的列表的索引?到底做什么? -
IIUC,您想从这个数据框创建一个字典,以便从
rules列中的列表中获取键,并且关联的值来自procedure列? -
rahl23 您确实理解正确。我试图在我的编辑中澄清一点
标签: python pandas dictionary dataframe