一、构建
1. 通过 ndarray构建
arr = np.random.rand(4, 4)
df_obj = pd.DataFrame(arr)
print(df_obj)
输出:(数据是随机生成的,可以使用随机种子固定生成的数字)
0 1 2 3
0 0.887001 0.159135 0.531054 0.446669
1 0.392911 0.745747 0.978641 0.358632
2 0.901214 0.801795 0.364764 0.374095
3 0.873889 0.325179 0.692598 0.385349
2. 通过 dict构建
import pandas as pd
dic = {
"序号" : pd.Series(range(1, 5), dtype = "int32"),
"姓名" : ['张三','李四','王五','赵六'],
"日期" : pd.Timestamp("20210921"),
"科目" : ["Python", "Java", "C++", "C"],
"性别" : np.array(['男','女'] * 2, dtype="str"),
"班级" : "IT进修班"
}
df_obj = pd.DataFrame(dic)
print(df_obj)
输出:(不同字段,可以使用不同的数据格式)
序号 姓名 日期 科目 性别 班级
0 1 张三 2021-09-21 Python 男 IT进修班
1 2 李四 2021-09-21 Java 女 IT进修班
2 3 王五 2021-09-21 C++ 男 IT进修班
3 4 赵六 2021-09-21 C 女 IT进修班
3、通过dataclass
from dataclasses import make_dataclass
Point = make_dataclass("Point", [("x", int), ("y", int)])
pd.DataFrame([Point(0, 0), Point(0, 3), Point(2, 3)])
输出
x y
0 0 0
1 0 3
2 2 3
二、DataFrame属性
at、attrs、axes、columns、dtypes、empty、flags、iat、iloc、index、loc、ndim、shape、size、style、values、T
1、values
df = pd.DataFrame({'age': [ 3, 29],
'height': [94, 170],
'weight': [31, 115]})
df.values
array([[ 3, 94, 31],
[ 29, 170, 115]])
三、方法
abs() # 返回一个序列/数据帧,其中包含每个元素的绝对数值。
add()
add_prefix()
add_suffix()
agg()
aggregate()
align()
all()
any()
append()
apply()
applymap()
asfreq()
asof()
assign()
astype()