对pandas的行列名更改与数据选择详解

  • Post category:Python

针对“对pandas的行列名更改与数据选择详解”,我准备了以下完整攻略:

1. 修改行列名

对于pandas数据框的行列名,我们可以通过.rename()方法进行修改。示例如下:

import pandas as pd

# 读取csv文件
df = pd.read_csv('example.csv')

# 查看原始行列名
print(df.columns)  # 输出:Index(['name', 'age', 'gender'], dtype='object')

# 修改列名
df = df.rename(columns={'name': '姓名', 'age': '年龄', 'gender': '性别'})

# 查看修改后的行列名
print(df.columns)  # 输出:Index(['姓名', '年龄', '性别'], dtype='object')

在上述示例中,我们利用了.columns属性获取了原始行列名。然后,使用.rename()方法将列名nameagegender分别修改为了姓名年龄性别。最后,使用.columns属性再次查看新的行列名。

对于行名的修改也是类似的,区别在于需要使用.rename()方法的index参数。示例如下:

import pandas as pd

# 读取csv文件
df = pd.read_csv('example.csv')

# 查看原始行名
print(df.index)  # 输出:RangeIndex(start=0, stop=3, step=1)

# 修改行名
df = df.rename(index={0: 'A', 1: 'B', 2: 'C'})

# 查看修改后的行名
print(df.index)  # 输出:Index(['A', 'B', 'C'], dtype='object')

在上述示例中,我们使用了.index属性获取了原始行名。然后,使用.rename()方法将行索引0、1和2分别修改为了ABC。最后,使用.index属性再次查看新的行名。

2. 数据选择

在pandas中,我们可以通过行列名或者行列索引进行数据选择。示例如下:

import pandas as pd

# 读取csv文件
df = pd.read_csv('example.csv')

# 选择一列
print(df['name'])

# 选择多列
print(df[['name', 'age']]])

# 选择一行
print(df.loc[0])

# 选择多行
print(df.loc[[0, 1, 2]])

# 选择某几行、某几列的交叉值
print(df.loc[[0, 1], ['name', 'age']])

在上述示例中,我们首先读取了一个csv文件,然后对数据进行了选择。对于列的选择,我们可以借助中括号[]来实现,例如df['name']选择了列名为name的列;df[['name', 'age']]]选择了列名为nameage的两列。对于行的选择,我们使用.loc[]方法,其中传入行索引或者行索引的列表。例如,df.loc[0]选择了第0行的数据;df.loc[[0, 1, 2]]选择了第0至2行的数据;df.loc[[0, 1], ['name', 'age']]选择了第0至1行以及列名为nameage的两列的交叉数据。

以上就是“对pandas的行列名更改与数据选择详解”的完整攻略。希望可以对你有所帮助!