关键词

如何在Pandas中获取DataFrame的列片

获取DataFrame的列片主要可以用两种方法:访问列属性和使用iloc方法。以下是具体的攻略和实例说明:

1. 访问列属性

1.1 单列

通过访问列属性获取单列数据的方法是在DataFrame对象后面加上一个点和列名。

df.column_name

例如,我们可以用以下代码获取“name”这一列的所有数据:

import pandas as pd

data = {'name': ['Tom', 'Jack', 'Steve', 'Ricky', 'Bob'],
        'age': [28, 34, 29, 42, 25],
        'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Nanjing']}
df = pd.DataFrame(data)

print(df.name)     # 获取“name”这一列

输出结果为:

0      Tom
1     Jack
2    Steve
3    Ricky
4      Bob
Name: name, dtype: object

1.2 多列

通过访问列属性获取多列数据的方法是在DataFrame对象后面加上一个列名列表。

df[['column_name1','column_name2', ... ,'column_nameN']]

例如,我们可以用以下代码获取“name”和“age”这两列的所有数据:

print(df[['name', 'age']])     # 获取“name”和“age”这两列

输出结果为:

    name  age
0    Tom   28
1   Jack   34
2  Steve   29
3  Ricky   42
4    Bob   25

2. 使用iloc方法

iloc方法可以通过在行和列上指定位置来获取DataFrame的列片。

df.iloc[start_row: end_row, start_column: end_column]
  • start_row: 从哪一行开始
  • end_row: 到哪一行结束(不包括该行)
  • start_column: 从哪一列开始
  • end_column: 到哪一列结束(不包括该列)

例如,我们可以用以下代码获取第一列的所有数据:

print(df.iloc[:, 0])   # 获取第一列的所有数据

输出结果为:

0      Tom
1     Jack
2    Steve
3    Ricky
4      Bob
Name: name, dtype: object

我们也可以用以下代码获取第一和第二列的所有数据:

print(df.iloc[:, 0:2])   # 获取第一和第二列的所有数据

输出结果为:

    name  age
0    Tom   28
1   Jack   34
2  Steve   29
3  Ricky   42
4    Bob   25

以上就是在Pandas中获取DataFrame的列片的完整攻略,我们可以通过访问列属性和使用iloc方法来获取DataFrame的列片,具体使用方法视需要而定。

本文链接:http://task.lmcjl.com/news/17473.html

展开阅读全文