Pandas 的 DataFrame
是一个二维的、大小可变的、异质型表格数据结构,带有标签化的轴(行和列)。简单来说,你可以将 DataFrame
看作是一个 Excel 表格或 SQL 数据表,在数据分析和数据处理中非常有用。
创建 DataFrame
DataFrame
可以通过多种方式创建,最常用的是直接从字典、列表的列表、或 NumPy 数组创建。
从字典创建
import pandas as pd
data = {
'Column1': [1, 2, 3, 4],
'Column2': ['a', 'b', 'c', 'd'],
'Column3': [1.1, 2.2, 3.3, 4.4]
}
df = pd.DataFrame(data)
从列表的列表创建
data = [
[1, 'a', 1.1],
[2, 'b', 2.2],
[3, 'c', 3.3],
[4, 'd', 4.4]
]
df = pd.DataFrame(data, columns=['Column1', 'Column2', 'Column3'])
从 NumPy 数组创建
import numpy as np
data = np.array([
[1, 'a', 1.1],
[2, 'b', 2.2],
[3, 'c', 3.3],
[4, 'd', 4.4]
])
df = pd.DataFrame(data, columns=['Column1', 'Column2', 'Column3'])
从Series创建
# -*- coding: utf-8 -*-
import pandas as pd
data = {
'Column1': [1, 2, 3, 4],
'Column2': ['a', 'b', 'c', 'd'],
'Column3': [1.1, 2.2, 3.3, 4.4]
}
s = pd.Series(data)
df = pd.DataFrame(data)
确实,对于操作和分析 Pandas DataFrame
,了解如何获取和使用其属性是基本且重要的。这些属性提供了有关 DataFrame
的结构和内容的信息,对于数据预处理、分析和可视化都非常有用。下面列出了一些最常用的属性和方法来获取 DataFrame
的属性:
DataFrame
属性
Pandas DataFrame
是用于数据科学和分析的一个强大工具,它提供了一系列属性,使得数据探索、清洗和处理变得更加高效和直观。以下是 DataFrame
的一些核心属性,它们为数据操作和分析提供了基础。
1. dtypes
- 描述:显示每一列数据的数据类型。
- 用法:
df.dtypes
- 返回值:Pandas Series,索引为列名,值为每列的数据类型。
2. shape
- 描述:提供
DataFrame
的形状,即行数和列数。 - 用法:
df.shape
- 返回值:一个元组,第一个元素是行数,第二个元素是列数。
3. index
- 描述:
DataFrame
的索引(行标签)。 - 用法:
df.index
- 返回值:Pandas Index 对象,包含所有行标签。
4. columns
- 描述:
DataFrame
的列名。 - 用法:
df.columns
- 返回值:Pandas Index 对象,包含所有列名。
5. values
- 描述:
DataFrame
中的数据,以 NumPy 数组的形式返回。 - 用法:
df.values
- 返回值:一个 NumPy 数组,包含
DataFrame
的数据。
6. size
- 描述:
DataFrame
中元素的总数量。 - 用法:
df.size
- 返回值:一个整数,等于行数乘以列数。
7. T
(转置)
- 描述:
DataFrame
的转置版本,即行列互换。 - 用法:
df.T
- 返回值:行列互换后的
DataFrame
。
8. empty
- 描述:检查
DataFrame
是否为空(无行或列)。 - 用法:
df.empty
- 返回值:布尔值,如果
DataFrame
为空,则返回True
;否则返回False
。
示例
假设我们有以下 DataFrame
:
import pandas as pd
data = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'Salary': [50000, 70000, 80000]
}
df = pd.DataFrame(data)
展示如何使用这些属性:
# 数据类型
print(df.dtypes)
# 形状
print(df.shape)
# 索引
print(df.index)
# 列名
print(df.columns)
# 值
print(df.values)
# 元素总数
print(df.size)
# 转置
print(df.T)
# 是否为空
print(df.empty)
获取DataFrame数据
info()
提供 DataFrame
的概览,包括每列的类型、非空值数量以及内存使用情况。
df.info()
head(n)
查看 DataFrame
的前 n
行数据,默认值为 5。
df.head()
tail(n)
查看 DataFrame
的后 n
行数据,默认值为 5。
df.tail()
describe()
提供 DataFrame
数值列的统计摘要,包括均值、标准差、最小值、最大值等。
df.describe()
示例
假设我们有以下 DataFrame
:
import pandas as pd
data = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'Salary': [50000, 70000, 80000]
}
df = pd.DataFrame(data)
获取和查看其属性和统计摘要:
# DataFrame 概览
df.info()
# 查看前几行
print(df.head(2))
# 查看后几行
print(df.tail(2))
# 统计摘要
print(df.describe())