我有两个数据帧,“inp”和“IndiRelat”。“inp”是某些数据的条目
import pandas as pd
inp = [[2, 'cvt' , -3, 5, 17, -2, -9, -0.2, 'RL'],
[2, 'cv' , 0, 0, 0, 0, 0, 0, 'LL'],
[2, 'sope' , 0, 0, 0, 0, 0, 0, 'SD'],
[2, 'wix+' ,-13,-13, 2, 1,-62, -0.5, 'WI'],
[2, 'wix-' , 0, 16, 6, 13, 0, 0.3, 'WI'],
[4, 'sope' ,-42, 0, 29, 0, 0, -13, 'SD'],
[4, 'cv' , 0, 0, 0, 0, 0, 0, 'LL'],
[4, 'cvt' , 0, 0, 0, 0, 0, -1, 'RL'],
[4, 'wix+' ,-18, -2, 19, 19, 3, -64, 'WI'],
[4, 'wix-' , 0,-30, -2, -2, 32, 0, 'WI']]
inp = pd.DataFrame(data = inp, columns = ['Key','Descr', 'C1', 'C2', 'C3', 'C4', 'C5', 'C6', 'Indicator'])
print(inp['Key'])
print(inp['Indicator'])
IndiRelat = ['SD', 'LL', 'RL', 'SS', 'RR', 'WI', 'WI', 'WI', 'WI', 'QU', 'QU']
IndiRelat = pd.DataFrame(IndiRelat)
我已经创建了一个“inp”数据框,其中每个键“inp['key']”都有与指标“inp['indicator']”相关的数据
想法是将其与第二个数据帧“IndiRelat”关联,并在“IndiRelat”数据不在“inp['indicator']”中的情况下创建零行
我想要得到的是这样的东西
Index Descr C1 C2 C3 C4 C5 C6 Indicator
0 2 cvt -3 5 17 -2 -9 -0.2 RL
1 2 cv 0 0 0 0 0 0 LL
2 2 sope 0 0 0 0 0 0 SD
3 2 wix+ -13 -13 2 1 -62 -0.5 WI
4 2 wix- 0 16 6 13 0 0.3 WI
5 2 0 0 0 0 0 0 0 WI
6 2 0 0 0 0 0 0 0 WI
7 2 0 0 0 0 0 0 0 QU
8 2 0 0 0 0 0 0 0 QU
9 2 0 0 0 0 0 0 0 SS
10 2 0 0 0 0 0 0 0 RR
11 4 cvt -42 0 29 0 0 -13 RL
12 4 cv 0 0 0 0 0 0 LL
13 4 sope 0 0 0 0 0 -1 SD
14 4 wix+ -18 -2 19 19 3 -64 WI
15 4 wix- 0 -30 -2 -2 32 0 WI
16 4 0 0 0 0 0 0 0 WI
17 4 0 0 0 0 0 0 0 WI
18 4 0 0 0 0 0 0 0 QU
19 4 0 0 0 0 0 0 0 QU
20 4 0 0 0 0 0 0 0 SS
21 4 0 0 0 0 0 0 0 RR
如果你能帮我提出一些想法和建议,我将不胜感激
我们尝试执行
cumcount
创建唯一键,然后执行reindex
外部合并应该起作用。根据@BENY的评论和回答,我们需要解决密钥的非唯一性问题:
相关问题 更多 >
编程相关推荐