DataFrame 就像一个表格,数据按行和列组织。它是一个二维数据结构,类似于二维数组。例如,
Country Capital Population 0 Canada Ottawa 37742154 1 Australia Canberra 25499884 2 UK London 67886011 3 Brazil Brasília 212559417
这里,
Country
、Capital
和Population
是列名。- 每一行代表一个记录,左侧是索引值。索引值从 **0** 开始自动分配。
- 每一列包含相同类型的数据。例如,
Country
和Capital
包含字符串,Population
包含整数。
DataFrame 类似于 SQL 数据库中的表,或 Excel 中的电子表格。它旨在管理 Python 中有序和无序的数据集。
创建 Pandas DataFrame
我们可以通过以下方式创建 Pandas DataFrame:
- 使用 Python 字典
- 使用 Python 列表
- 从文件创建
- 创建空 DataFrame
使用 Python 字典创建 Pandas DataFrame
我们可以通过将 字典 传递给 DataFrame()
函数来创建 DataFrame。例如:
import pandas as pd
# create a dictionary
data = {'Name': ['John', 'Alice', 'Bob'],
'Age': [25, 30, 35],
'City': ['New York', 'London', 'Paris']}
# create a dataframe from the dictionary
df = pd.DataFrame(data)
print(df)
输出
Name Age City 0 John 25 New York 1 Alice 30 London 2 Bob 35 Paris
在此示例中,我们创建了一个名为 data 的字典,其中包含列名(Name
、Age
、City
)作为键,以及相应的值列表作为其值。
然后,我们使用 pd.DataFrame()
函数将字典转换为名为 df 的 DataFrame。
使用 Python 列表创建 Pandas DataFrame
我们还可以使用二维 列表 来创建 DataFrame。例如:
import pandas as pd
# create a two-dimensional list
data = [['John', 25, 'New York'],
['Alice', 30, 'London'],
['Bob', 35, 'Paris']]
# create a DataFrame from the list
df = pd.DataFrame(data, columns=['Name', 'Age', 'City'])
print(df)
输出
Name Age City 0 John 25 New York 1 Alice 30 London 2 Bob 35 Paris
在此示例中,我们创建了一个名为 data 的二维列表,其中包含嵌套列表。
DataFrame()
函数将 2D 列表转换为 DataFrame。每个嵌套列表在 DataFrame 中充当一行数据。
columns
参数为 DataFrame 的每一列提供名称。
注意: 我们也可以使用 NumPy 数组以类似的方式创建 DataFrame。
从文件创建 Pandas DataFrame
创建 DataFrame 的另一种常见方法是从 CSV(逗号分隔值)文件加载数据。例如:
import pandas as pd
# load data from a CSV file
df = pd.read_csv('data.csv')
print(df)
在此示例中,我们使用了 read_csv()
函数,该函数读取 CSV 文件 data.csv
,并自动创建一个 DataFrame 对象 df
,其中包含 CSV 文件中的数据。
注意: 我们还可以使用其他文件类型创建 DataFrame,例如 JSON、Excel 电子表格、SQL 数据库等。以下是读取不同文件类型的常用方法:
- JSON -
read_json()
- Excel 电子表格 -
read_excel()
- SQL -
read_sql()
创建空 DataFrame
有时我们可能希望创建一个空 DataFrame,然后再添加数据。例如:
import pandas as pd
# create an empty DataFrame
df = pd.DataFrame()
print(df)
输出
Empty DataFrame Columns: [] Index: []
在此示例中,我们通过调用不带任何参数的 pd.DataFrame()
来创建了一个空 DataFrame。
在这里,DataFrame 中的 Columns 和 Index 列表都是空的。DataFrame 没有数据,但可以用作稍后存储和操作数据的容器。