📜  数据框名称 pandas - Python (1)

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

数据框名称 pandas - Python

Pandas 是 Python 的一种开源数据分析工具,提供了多种数据结构,其中最重要的是 Series(一维数据)和 DataFrame(二维数据)。

DataFrame

DataFrame 是 Pandas 中用于处理表格结构数据的主要数据结构,可以使数据的处理更加便捷。DataFrame 可以看做一张二维表格,其中每一行被称为一条记录,每一列被称为一个特征,对应于我们日常生活中的数据表格。

创建 DataFrame

我们可以使用 Pandas 来创建 DataFrame。最简单的方法是从已有的数据中创建一个 DataFrame,例如一个列表、一个字典或一个 NumPy 数组。

以下是一个使用字典创建 DataFrame 的示例:

import pandas as pd

# create a DataFrame from dictionary
data = {'Name': ['Tom', 'Jack', 'Steve', 'Ricky'],
        'Age': [28, 34, 29, 42],
        'Gender': ['M', 'M', 'M', 'M']}
df = pd.DataFrame(data)

print(df)

输出结果如下:

     Name  Age Gender
0     Tom   28      M
1    Jack   34      M
2   Steve   29      M
3   Ricky   42      M
数据的操作和处理

使用 Pandas,我们可以轻松地对数据进行许多操作和处理,例如:

  • 数据的选择和过滤
  • 数据的排序和分组
  • 数据的合并和重塑

以下是一些实用的操作:

选择和过滤

我们可以使用 loc[] 和 iloc[] 索引器来对 DataFrame 进行选择和过滤。

以下是使用 loc[] 和 iloc[] 索引器对 DataFrame 进行选择的示例:

# select rows based on a condition
df_filtered = df.loc[df['Age'] > 30]
print(df_filtered)

# select rows and columns based on a condition
df_filtered = df.loc[df['Age'] > 30, ['Name', 'Gender']]
print(df_filtered)

# select rows and columns based on index number
df_filtered = df.iloc[1:3, 0:2]
print(df_filtered)
排序和分组

我们可以使用 sort_values() 方法和 groupby() 方法对 DataFrame 进行排序和分组。

以下是使用 sort_values() 方法和 groupby() 方法对 DataFrame 进行排序和分组的示例:

# sort by column Age
df_sorted = df.sort_values(by=['Age'], ascending=False)
print(df_sorted)

# group by column Gender and calculate the mean value of column Age
df_grouped = df.groupby(['Gender'])['Age'].mean()
print(df_grouped)
合并和重塑

我们可以使用 merge() 方法和 pivot_table() 方法对 DataFrame 进行合并和重塑。

以下是使用 merge() 方法和 pivot_table() 方法对 DataFrame 进行合并和重塑的示例:

# merge two DataFrames by column Name
data2 = {'Name': ['Tom', 'Jack', 'David', 'Mary'],
         'Salary': [3500, 4500, 2800, 5000]}
df2 = pd.DataFrame(data2)

df_merged = pd.merge(df, df2, on='Name')
print(df_merged)

# create a pivot table based on Gender and Age
df_pivot = pd.pivot_table(df, index='Gender', columns='Age', values='Name', aggfunc='count')
print(df_pivot)
结论

Pandas 是一个非常强大的数据分析工具,可以使数据处理和分析更加高效和便捷。这篇介绍主要针对 Pandas 的 DataFrame 进行了详细的讲解,希望对你们有所帮助。