【Pandas】pandas DataFrame from_dict
Pandas2.2 DataFrame
Serialization IO conversion
方法 | 描述 |
---|---|
DataFrame.from_dict(data[, orient, dtype, …]) | 用于从 字典(dict) 构建 DataFrame 的类方法 |
pandas.DataFrame.from_dict()
pandas.DataFrame.from_dict(data, orient='columns', dtype=None, columns=None)
是 pandas
中用于从 字典(dict) 构建 DataFrame 的类方法。
📌 方法签名
pandas.DataFrame.from_dict(data, orient='columns', dtype=None, columns=None)
参数说明:
参数 | 类型 | 描述 |
---|---|---|
data | dict | 包含数据的字典,键为列名或行标签(取决于 orient ) |
orient | str,默认 'columns' | 控制字典键的方向: - 'columns' :字典的键是列名- 'index' :字典的键是索引(行标签) |
dtype | 数据类型(可选) | 指定返回 DataFrame 的数据类型 |
columns | list(可选) | 当 orient='index' 时,指定列名顺序 |
✅ 示例及结果
示例 1:默认方式(orient='columns'
)
字典的键作为列名,值作为每列的数据。
import pandas as pddata = {'A': [1, 2, 3],'B': [4, 5, 6]
}df = pd.DataFrame.from_dict(data)
print(df)
输出:
A B
0 1 4
1 2 5
2 3 6
示例 2:使用 orient='index'
字典的键作为行索引,每个值是一个序列(列表、元组等),表示该行的数据。
data = {'row1': [1, 2],'row2': [3, 4],'row3': [5, 6]
}df = pd.DataFrame.from_dict(data, orient='index')
print(df)
输出:
0 1
row1 1 2
row2 3 4
row3 5 6
你也可以通过 columns
参数指定列名:
df = pd.DataFrame.from_dict(data, orient='index', columns=['Col1', 'Col2'])
print(df)
输出:
Col1 Col2
row1 1 2
row2 3 4
row3 5 6
示例 3:指定数据类型 dtype
你可以强制转换所有列的数据类型:
data = {'A': [1, 2, 3],'B': [4, 5, 6]
}df = pd.DataFrame.from_dict(data, dtype='float64')
print(df.dtypes)
输出:
A float64
B float64
dtype: object
📝 总结
特性 | 说明 |
---|---|
方法名 | DataFrame.from_dict() |
输入 | 字典结构 |
支持方向 | 'columns' (默认)、'index' |
自动对齐 | 支持不同长度的值,自动填充 NaN |
类型控制 | 可通过 dtype 指定数据类型 |
列名控制 | 在 orient='index' 时可用 columns 指定列名 |