这与列的工作是我的表的一部分:在大熊猫
type n_b
sp 2
sp 2
sp 3
avn 2
avn 4
avn 3
psp 1
psp 3
psp 5
...
另外我有一个数据集:
d = pd.Series({'sp':['98,00', '0,00', '68,00'], 'psp':['17,00', '7,60', '14,30'],
'avn':['15,00', '10,00', '4,30']})
我需要的价值从我的数据集相匹配在新列“c_t”中,取决于“类型”列中的值。这应该是什么结果:
type n_b c_t
sp 2 98,00
sp 2 0,00
sp 3 68,00
avn 2 15,00
avn 4 10,00
avn 3 4,30
psp 1 17,00
psp 3 7,60
psp 5 14,30
...
我的代码如下所示:
d = pd.Series({'sp':['98,00', '0,00', '68,00'], 'psp':['17,00', '7,60', '14,30'],
'avn':['15,00', '10,00', '4,30']})
df['c_t'] = df['type'].map(d)
print (df)
但因为我需要它
type n_b c_t
sp 2 [98,00, 0,00, 68,00]
sp 2 [98,00, 0,00, 68,00]
sp 3 [98,00, 0,00, 68,00]
avn 2 [15,00, 10,00, 4,30]
avn 4 [15,00, 10,00, 4,30]
avn 3 [15,00, 10,00, 4,30]
psp 1 [17,00, 7,60, 14,30]
psp 3 [17,00, 7,60, 14,30]
psp 5 [17,00, 7,60, 14,30]
...
我怎样才能解决这个问题它不工作?
UPD:其实,有文件
d1 = pd.Series({'ds':['104,50', '19,00', '10,00', '30,00', '0,00', '0,00', '16,00', '21,50'],
'zkp':['33,00', '100,00', '16,00', '3,30', '9,00', '0,00', '0,00', '0,00', '4,80', '78,50'],
'dgv':['96,00', '0,00', '194,50', '61,00', '0,00', '10,00', '0,00', '28,00', '0,00', '0,00',
'11,00', '30,00', '0,00', '0,00', '0,00', '16,00', '78,50'], 'sp':['98,00', '0,00', '68,00'],
'psp':['17,00', '7,60', '14,30'],'avn':['15,00', '10,00', '4,30']})
在更多的数据和表是巨大的:
type n_b Day_number
ds 2 1
ds 3 2
ds 1 3
ds 2 4
ds 1 5
ds 3 6
ds 2 7
ds 1 8
sp 2 1
sp 2 2
sp 1 3
avn 2 1
avn 4 2
avn 3 3
psp 1 1
psp 3 2
psp 5 3
sp 2 1
sp 2 2
sp 4 3
...
和所有类型(DS,ZKP,DGV,SP,PSP ,avn)在文件中。列“n_b”不影响列“c_t”。如果有帮助,请在“Day_number”列中编号。
而且结果应该是以下几点:
type n_b Day_number c_t
ds 2 1 104,50
ds 3 2 19,00
ds 1 3 10,00
ds 2 4 30,00
ds 1 5 0,00
ds 3 6 0,00
ds 2 7 16,00
ds 1 8 21,50
sp 2 1 98,00
sp 2 2 0,00
sp 1 3 68,00
avn 2 1 15,00
avn 4 2 10,00
avn 3 3 4,30
psp 1 1 17,00
psp 3 2 7,60
psp 5 3 14,30
sp 2 1 98,00
sp 2 2 0,00
sp 4 3 68,00
...
N_B是否对数据集的位置有任何影响或者是它始终只是要在它在系列中出现的顺序?并且会一直有3种类型? – pshep123
不,列“n_b”不影响数据的放置。一行中的类型数量可能不同。但我提前定义它。我只是想,如果我有一个例子,我可以在其他价值观上做到这一点。 –