Python 熊猫从另一个数据帧获取值和位置,并生成一个系列
比如说,我有一个数据帧(dfrtn) 然后,我从dfrtn(dfrtn2=dfrtn%7)生成另一个数据帧(dfrtn2) 我想添加两个新列,“Minimum”和“MinCol”,如下所示Python 熊猫从另一个数据帧获取值和位置,并生成一个系列,python,pandas,numpy,Python,Pandas,Numpy,比如说,我有一个数据帧(dfrtn) 然后,我从dfrtn(dfrtn2=dfrtn%7)生成另一个数据帧(dfrtn2) 我想添加两个新列,“Minimum”和“MinCol”,如下所示 Minimum MinCol 0 0 C 1 0 D 2 0 E 3 0 F 4 1 A 我只有源数据帧,无法生成最小和最小列 dfrtn = pd.DataFrame(np.arange(33,
Minimum MinCol
0 0 C
1 0 D
2 0 E
3 0 F
4 1 A
我只有源数据帧,无法生成最小和最小列
dfrtn = pd.DataFrame(np.arange(33,63).reshape(5,6), columns=['A', 'B', 'C', 'D', 'E', 'F'])
dfrtn2 = rtn % 7
我试着用这个,但还不能解决
for x in dfrtn.T.idxmin()
有人能帮我吗
===============================
谢谢,我真的很感激,这里还有一个问题。。。
如果我想从dfrtn中获取值,它与dfrtn2的位置相同,我该怎么做
结果应该是
Minimum MinCol
0 35 C
1 42 D
2 49 E
3 56 F
4 57 A
提前谢谢 每行使用
DataFrame
constructor和min
:
df1 = pd.DataFrame({'MinCol': dfrtn2.idxmin(axis=1),
'Minimum': dfrtn2.min(axis=1)}, columns=['Minimum','MinCol'])
print (df1)
Minimum MinCol
0 0 C
1 0 D
2 0 E
3 0 F
4 1 A
对于原始值,添加
dfrtn2.min()
将提供一个系列,其中索引是列名,值是该列的最小值。这就是你想要的吗?E:好的,不是这样,但是试着查看dfrtn2.min(axis=1)
和np.argmin
function@RobinNemeth谢谢,我又补充了一个问题。请再次查看问题。谢谢jezrael,我刚刚又添加了一个问题,你能再帮我一次吗?@B.A.-当然,问题是什么?@B.A.-你需要新的数据帧的新列吗?@B.A.-很高兴能帮上忙!如果我的答案有帮助,别忘了——点击答案旁边的复选标记,将其从灰色变为填充。谢谢
Minimum MinCol
0 35 C
1 42 D
2 49 E
3 56 F
4 57 A
df1 = pd.DataFrame({'MinCol': dfrtn2.idxmin(axis=1),
'Minimum': dfrtn2.min(axis=1)}, columns=['Minimum','MinCol'])
print (df1)
Minimum MinCol
0 0 C
1 0 D
2 0 E
3 0 F
4 1 A
df1['new'] = dfrtn.lookup(dfrtn.index, df1['MinCol'])
print (df1)
Minimum MinCol new
0 0 C 35
1 0 D 42
2 0 E 49
3 0 F 56
4 1 A 57
df1['Minimum'] = dfrtn.lookup(dfrtn.index, df1['MinCol'])
print (df1)
Minimum MinCol
0 35 C
1 42 D
2 49 E
3 56 F
4 57 A