Python 熊猫:将两列值与嵌套字典进行比较
我读了很多书,但我不知道该怎么做。我有一个df,有两列:Python 熊猫:将两列值与嵌套字典进行比较,python,pandas,Python,Pandas,我读了很多书,但我不知道该怎么做。我有一个df,有两列:data和fold,还有一个嵌套字典,名为dicDataFolds,其中data作为每个字典的键,而fold作为每个字典的键,如下所示: dicDataFolds = {'data1': {1: 111936, 2: 111928, 3: 111821, 4: 111852, 5: 111882}, 'data2': {1: 1566460, 2: 1566434, 3: 1566245, 4: 1566
data
和fold
,还有一个嵌套字典,名为dicDataFolds
,其中data
作为每个字典的键,而fold
作为每个字典的键,如下所示:
dicDataFolds = {'data1': {1: 111936, 2: 111928, 3: 111821, 4: 111852, 5: 111882},
'data2': {1: 1566460, 2: 1566434, 3: 1566245, 4: 1566502, 5: 1566550},
'data3': {1: 292478, 2: 316757, 3: 316671, 4: 292265, 5: 316018},
...
}
我想访问字典,以便获得“data”和“fold”列值所指向的值,并将其存储在新列中
有什么建议吗?- 编写一个函数
- 以级数为参数李>
- 从该序列中提取
和数据
值李>折叠
- 使用这些值访问字典李>
- 并返回结果
- 沿
dataframe[['data','fold']]的轴1应用函数
- 将该应用程序的返回值分配给数据帧的新列
df=pf.DataFrame(dicDataFolds)
我已经按照您的建议从我的字典创建了一个dfdic
,但我不知道如何使用这两个列值进行访问:我已经尝试了这个dfdic[df['data']][df['fold']]
但它不起作用。下一步,你可以合并两个数据帧并得到你需要的结果。谢谢你,我已经用与你回答类似的方式解决了问题,但我认为会有更直接的解决方法。