python pandas dataframe 行列选择,切片操作方法

  • Post category:Python

Python中Pandas库提供了DataFrame数据类型,它类似于Excel中的一个二维数据表,可以用来表示和处理各种类型的数据。对于DataFrame,常用的操作包括行列选择和切片操作。接下来我将为大家详细介绍Python Pandas DataFrame行列选择、切片操作方法的完整攻略。

DataFrame行列选择

列选择

要从DataFrame中选择一列数据,我们可以使用类似于字典下标的方式df['col_name']来实现。如下示例:

import pandas as pd

df = pd.DataFrame({'name':['Alice', 'Bob', 'Charlie'], 'age':[25, 30, 35]})
print(df['name'])

输出结果:

0      Alice
1        Bob
2    Charlie
Name: name, dtype: object

行选择

要从DataFrame中选择一行或多行数据,我们可以使用.loc.iloc方法。

.loc方法为例,它接收的参数为一个表示行的列表,其中行名应该在列名中具有唯一性,因为它们是用来访问数据的主要索引。如下示例:

import pandas as pd

df = pd.DataFrame({'name':['Alice', 'Bob', 'Charlie'], 'age':[25, 30, 35]})
print(df.loc[1])

输出结果:

name    Bob
age      30
Name: 1, dtype: object

同时.loc方法也可以用来选择多行数据,此时行名可以使用列表方式传递:

import pandas as pd

df = pd.DataFrame({'name':['Alice', 'Bob', 'Charlie'], 'age':[25, 30, 35]})
print(df.loc[[0, 2]])

输出结果:

      name  age
0    Alice   25
2  Charlie   35

行、列同时选择

除了通过行或列选择数据之外,也可以通过行、列同时选择数据,这就是DataFrame的切片操作,接下来我们会详细说明。

DataFrame切片操作

DataFrame切片操作通常使用.loc.iloc方法,其中.loc表示基于行名称和列名称的切片标识符,而.iloc表示基于行索引和列索引的切片标识符。

下面是使用.loc.iloc方法进行切片的一些示例。

选择行和列

.loc方法为例,可以使用以下方式选择行和列:

import pandas as pd

df = pd.DataFrame({'name':['Alice', 'Bob', 'Charlie'], 'age':[25, 30, 35], 'gender':['F', 'M', 'M']})
print(df.loc[:, ['name', 'age']])

其中,:表示选择所有行,['name', 'age']表示选择列名称为'name''age'的列。输出结果如下:

      name  age
0    Alice   25
1      Bob   30
2  Charlie   35

选择行的范围

我们可以使用:来选择一定范围内的行。如下示例:

import pandas as pd

df = pd.DataFrame({'name':['Alice', 'Bob', 'Charlie'], 'age':[25, 30, 35], 'gender':['F', 'M', 'M']})
print(df.loc[0:1, :])

其中0:1表示选择0至1行,:表示选择所有列。输出结果:

    name  age gender
0  Alice   25      F
1    Bob   30      M

选择列的范围

我们可以使用:来选择一定范围内的列。如下示例:

import pandas as pd

df = pd.DataFrame({'name':['Alice', 'Bob', 'Charlie'], 'age':[25, 30, 35], 'gender':['F', 'M', 'M']})
print(df.loc[:, 'name':'age'])

其中'name':'age'表示选择列名称从'name''age'的所有列。输出结果:

      name  age
0    Alice   25
1      Bob   30
2  Charlie   35

以上就是Python Pandas DataFrame行列选择和切片操作的完整攻略,希望能帮助大家更好地使用DataFrame进行数据处理。