猿问

制作新的DataFrame时,Pandas中的DataFrame倾斜

我有一个名为tinytimetable的数据框,如下所示:


      stepnr  stepred    max1d  max2d  1dlink  2dlink

0          2   3.0000   0.2880   15.0    4136       0

1          4  14.4841  14.4841   15.0    4730       0

2          6   7.4591   7.4591   15.0    4136       0

3          8  14.2190  14.2190   15.0    4136       0

4          9  12.9565  12.9565   15.0    4136       0

5         10  14.6573  14.6573   15.0    4136       0

6         11  13.9158  13.9158   15.0    4136       0 

...

我想只用前两个列stepnr和stepred制作一个新的DataFrame。stepnr必须是新DataFrame的索引。像这样:


stepnr   stepred 

     2    3.0000  

     4   14.4841  

     6    7.4591   

     8   14.2190  

     9   12.9565 

     10  14.6573 

     11  13.9158

             ...

我试过了:


tcalc= pandas.DataFrame(tinytimetable['stepred'], index=tinytimetable['stepnr'])

但是,这产生了以下结果:


        stepred

stepnr         

2        7.4591

4       12.9565

6       13.9158

8       14.1477

9       14.0405

10      14.0480

11      14.0196

如您所见,它从数字2到数字6的值处倾斜。如何更改此代码以使DataFrame正确?


慕码人2483693
浏览 179回答 2
2回答

慕婉清6462132

您可以通过选择两列并使用来做到这一点set_index:tcalc = tinytimetable[['stepred','stepnr']].set_index('stepnr')你会得到tcalc:        stepredstepnr         2        3.00004       14.48416        7.45918       14.21909       12.956510      14.657311      13.9158

ABOUTYOU

我会尝试先切片DataFrame,然后设置索引:tcalc = pandas.DataFrame(tinytimetable.loc[:, ['stepred', 'stepnr']]).set_index('stepnr'))
随时随地看视频慕课网APP

相关分类

Python
我要回答