Python Pandas – 如何从DataFrame中选择多行
在数据处理中,我们通常需要从一张表格中选取多行进行操作。在Python Pandas中,可以使用loc或iloc方法来实现这一目的。
使用loc方法选择多行
loc方法可以通过行标签或布尔数组选取指定行,具体语法为:
df.loc[[label1, label2, ...], :]
其中,[]代表选取,:代表所有列。将想要选取的行标签放入[]中,可以使用列表形式。
例如,选取表格df中第3行、第5行和第7行:
import pandas as pd
df = pd.read_csv('data.csv', index_col=0) # 假设读入了一张名为data.csv的表格
rows = [3, 5, 7]
df.loc[rows, :]
也可以通过布尔数组来选取行。例如,选取表格df中Age列为25岁的所有行:
import pandas as pd
df = pd.read_csv('data.csv', index_col=0) # 假设读入了一张名为data.csv的表格
bool_array = df['Age'] == 25
df.loc[bool_array, :]
使用iloc方法选择多行
iloc方法是使用行号进行选取,具体语法为:
df.iloc[[index1, index2, ...], :]
其中,[]代表选取,:代表所有列。将想要选取的行号放入[]中,可以使用列表形式。
例如,选取表格df中第2行、第4行和第6行:
import pandas as pd
df = pd.read_csv('data.csv', index_col=0) # 假设读入了一张名为data.csv的表格
rows = [1, 3, 5]
df.iloc[rows, :]
需要注意的是,iloc方法在选取时只能使用行号,不能使用标签。
结论
Python Pandas中的loc和iloc方法可以方便地选取多行,从而进行数据处理。需要根据具体的需求选择合适的方法。