在使用python的DataFrame中,是否有任何方法可以使用行索引范围选择列的特定部分

2024-09-27 00:15:46 发布

您现在位置:Python中文网/ 问答频道 /正文

例如: 假设我们有一个名为students的数据框,其中列

index  name    value.  name
    0   a    0.469112  jai
    1   b   -0.282863  pria
    2   c   -1.509059  riya
    3   d   -1.135632  avantika 
    4   e    1.212112  Akashi
    5   f   -0.173215  conan
    6   g    0.119209  ai chan
    7   h   -1.044236  shinichi
    8   i   -0.861849  Edogawa
    9   j   -2.104569  black org

现在,我特别想选择行数在4:8范围内的列值,即

4   e    1.212112  Akashi
5   f   -0.173215  conan
6   g    0.119209  ai chan
7   h   -1.044236  shinichi

我刚刚开始了解熊猫,所以我对这些东西有怀疑


Tags: 数据nameindexvalueaichanconanstudents
3条回答

你可以试试

df[4:8]

df.loc[4:7]

您可以使用df.iloc[行开始:行结束,列开始:列结束] 对于您的情况,请使用以下代码

students.iloc[4:8, :] # to take all columns we don't need to put any number range

尝试使用set_index和切片:

>>> df.set_index('index')[4:8].reset_index()
   index name    value.    name.1
0      4    e  1.212112    Akashi
1      5    f -0.173215     conan
2      6    g  0.119209   ai chan
3      7    h -1.044236  shinichi
>>> 

或者尝试调节:

>>> df[df['index'].lt(8) & df['index'].ge(4)]
   index name    value.    name.1
4      4    e  1.212112    Akashi
5      5    f -0.173215     conan
6      6    g  0.119209   ai chan
7      7    h -1.044236  shinichi
>>> 

或者只是:

>>> df[4:8]
   index name    value.    name.1
4      4    e  1.212112    Akashi
5      5    f -0.173215     conan
6      6    g  0.119209   ai chan
7      7    h -1.044236  shinichi
>>> 

相关问题 更多 >

    热门问题