📜  在Pandas DataFrame中处理行和列(1)

📅  最后修改于: 2023-12-03 15:37:36.805000             🧑  作者: Mango

在 Pandas DataFrame 中处理行和列

Pandas 是一个非常强大的数据处理库,它允许程序员以一种更加简便的方式对数据进行处理和分析。 DataFrame 是 Pandas 库中一种非常重要的数据类型,它类似于 Excel 中的表格,程序员可以在其中存储和操纵数据。在这里,我们将介绍如何在 Pandas DataFrame 中处理行和列。

创建 DataFrame

在处理 DataFrame 之前,首先需要创建一个 DataFrame。可以使用多种方式创建 DataFrame,例如从 CSV 文件中读取数据、从字典或列表创建等。下面是一些创建 DataFrame 的示例代码:

import pandas as pd
 
# 从 CSV 文件中创建 DataFrame
df = pd.read_csv("data.csv")
 
# 从字典创建 DataFrame
data = {"name": ["Alice", "Bob", "Charlie", "David"],
        "age": [25, 30, 35, 40]}
df = pd.DataFrame(data)
 
# 从列表创建 DataFrame
data = [["Alice", 25], ["Bob", 30], ["Charlie", 35], ["David", 40]]
df = pd.DataFrame(data, columns=["name", "age"])
访问 DataFrame 中的行和列

创建了 DataFrame 后,就可以开始访问其中的行和列。首先,我们可以使用 loc 方法访问 DataFrame 中的特定行,格式为df.loc[row_index]。例如:

import pandas as pd
 
data = {"name": ["Alice", "Bob", "Charlie", "David"],
        "age": [25, 30, 35, 40]}
df = pd.DataFrame(data)
 
# 访问第二行
print(df.loc[1])

输出:

name    Bob
age      30
Name: 1, dtype: object

我们还可以使用 iloc 方法访问 DataFrame 中的一组行或一组列,格式为df.iloc[row_indices, column_indices]。例如:

import pandas as pd
 
data = {"name": ["Alice", "Bob", "Charlie", "David"],
        "age": [25, 30, 35, 40]}
df = pd.DataFrame(data)
 
# 访问第二和第三行,以及第一列
print(df.iloc[1:3, 0])

输出:

1        Bob
2    Charlie
Name: name, dtype: object
对 DataFrame 进行过滤和操作

对 DataFrame 进行访问之后,我们还可以对其中的数据进行过滤和操作。例如,可以使用条件表达式过滤 DataFrame 中的数据,格式为df[condition]。例如:

import pandas as pd
 
data = {"name": ["Alice", "Bob", "Charlie", "David"],
        "age": [25, 30, 35, 40]}
df = pd.DataFrame(data)
 
# 过滤出大于 30 岁的数据
print(df[df["age"] > 30])

输出:

      name  age
2  Charlie   35
3    David   40

除了过滤之外,我们还可以使用一些 Pandas 提供的函数对 DataFrame 中的数据进行操作。例如,可以使用mean()函数计算平均值:

import pandas as pd
 
data = {"name": ["Alice", "Bob", "Charlie", "David"],
        "age": [25, 30, 35, 40]}
df = pd.DataFrame(data)
 
# 计算年龄的平均值
print(df["age"].mean())

输出:

32.5
修改 DataFrame 中的数据

最后,我们可以在 DataFrame 中修改数据。例如,可以使用loc方法将 DataFrame 中的某个值修改为其他值,格式为df.loc[row_index, column_name] = new_value。例如:

import pandas as pd
 
data = {"name": ["Alice", "Bob", "Charlie", "David"],
        "age": [25, 30, 35, 40]}
df = pd.DataFrame(data)
 
# 修改第一个元素
df.loc[0, "age"] = 26
print(df)

输出:

      name  age
0    Alice   26
1      Bob   30
2  Charlie   35
3    David   40

以上就是在 Pandas DataFrame 中处理行和列的一些基本操作。它们只是 Pandas DataFrame 中众多操作的冰山一角,如果你想更深入了解 Pandas,还需要深入学习。