DataFrame类型
DataFrame类型由共用相同索引的一组列组成
DataFrame是一个表格型的数据类型,每列值类型可以不同
DataFrame既有行索引、也有列索引
index axis=0
axis=1 column
DataFrame常用于表达二维数据,但可以表达多维数据
DataFrame类型可以由如下类型创建:
- 二维ndarray对象
- 由一维ndarray、列表、字典、元组或Series构成的字典
- Series类型
- 其他的DataFrame类型
DataFrame是二维带“标签”数组
DataFrame基本操作类似Series,依据行列索引
代码示例
# -*- coding: utf-8 -*-
# @File : dataframe_demo.py
# @Date : 2018-05-20
import pandas as pd
import numpy as np
# DataFrame对象
# 从二维ndarray对象创建 自动行、列索引
df = pd.DataFrame(np.arange(10).reshape(2, 5))
print(df)
"""
0 1 2 3 4
0 0 1 2 3 4
1 5 6 7 8 9
"""
# 从一维ndarray对象字典创建
dt = {
"one": pd.Series([1, 2, 3], index=["a", "b", "c"]),
"two": pd.Series([5, 6, 7, 8], index=["a", "b", "c", "d"])
}
df = pd.DataFrame(dt)
print(dt)
"""
{
'one':
a 1
b 2
c 3
dtype: int64,
'two':
a 5
b 6
c 7
d 8
dtype: int64
}
"""
# 数据根据行列索引自动补齐
df = pd.DataFrame(dt, index=["a", "b", "c"], columns=["one", "two"])
print(df)
"""
one two
a 1 5
b 2 6
c 3 7
"""
# 从列表类型的字典创建
dt = {
"one": [1, 2, 3, 4],
"two": [5, 6, 7, 9]
}
df = pd.DataFrame(dt, index=["a", "b", "c", "d"])
print(df)
"""
one two
a 1 5
b 2 6
c 3 7
d 4 9
"""
# 获取行索引
print(df.index)
# Index(['a', 'b', 'c', 'd'], dtype='object')
# 获取列索引
print(df.columns)
# Index(['one', 'two'], dtype='object')
# 获取值
print(df.values)
"""
[[1 5]
[2 6]
[3 7]
[4 9]]
"""
# 获取列
print(df["one"])
"""
a 1
b 2
c 3
d 4
Name: one, dtype: int64
"""
#获取行
print(df.ix["a"])
"""
one 1
two 5
Name: a, dtype: int64
"""
# 获取某单元格的值
print(df["one"]["a"])
# 1