DataFrame的运算
DataFrame重载了运算符,支持许多的运算
算术运算
|---------------------|----------------------------|
| 运算方法 | 运算说明 |
| df.add(other) | 对应元素的加,如果是标量,就每个元素加上标量 |
| df.radd(other) | 等效于other+df |
| df.sub(other) | 对应元素相减,如果是标量,就每个元素减去标量 |
| df.rsub(other) | other-df |
| df.mul(other) | 对应元素相乘,如果是标量,每个元素乘以标量 |
| df.rmul(other) | other*df |
| df.div(other) | 对应元素相除,如果是标量,每个元素除以标量 |
| df.rdiv(other) | other/df |
| df.truediv(other) | 对应元素相除,如果是标量,每个元素除以标量 |
| df.rtruediv(other) | other/df |
| df.floordiv(other) | 对应元素相除取整,如果是标量,每个元素除以标量 |
| df.rfloordiv(other) | other//df |
| df.mod(other) | 对应元素相除取余,如果是标量,每个元素除以标量 |
| df.rmod(other) | other%df |
| df.pow(other) | 对应元素的次方,如果是标量,每个元素的other次方 |
| df.rpow(other) | other**df |
python
import pandas as pd
df1 = pd.DataFrame({'c1':[1,2,3,4],'c2':[5,6,7,8],'c3':[10,11,12,13]})
df2 = pd.DataFrame({'c1':[11,12,13,14],'c2':[10,20,30,40],'c3':[100,200,300,400]})
df3 = df1 + df2
print(df3)
'''
c1 c2 c3
0 12 15 110
1 14 26 211
2 16 37 312
3 18 48 413
'''
df4 = pd.DataFrame({'c1':[11,12,13,14]})
df5 = df1 + df4
print(df5)
'''
c1 c2 c3
0 12 NaN NaN
1 14 NaN NaN
2 16 NaN NaN
3 18 NaN NaN
'''
df6 = df1 + 1
print(df6)
'''
c1 c2 c3
0 2 6 11
1 3 7 12
2 4 8 13
3 5 9 14
'''
df7 = df1 -2
print(df7)
'''
c1 c2 c3
0 -1 3 8
1 0 4 9
2 1 5 10
3 2 6 11
'''
df8 = 2 - df1
print(df8)
'''
c1 c2 c3
0 1 -3 -8
1 0 -4 -9
2 -1 -5 -10
3 -2 -6 -11
'''
比较运算
比较运算如果是标量,就是每个元素与标量的比较,如果是两个形状一样的DataFrame,生成一个每个元素对应比较的DataFrame。
DataFrame读写文件
|-----------------------------------------------------|----------------------------------|
| 方法名 | 说明 |
| read_table(filepath_or_buffer, *[, sep, ...]) | 从带分隔符的文件读取 |
| read_csv(filepath_or_buffer, *[, sep, ...]) | 读csv格式文件 |
| DataFrame.to_csv([path_or_buf, sep, na_rep, ...]) | 写csv格式文件 |
| read_fwf(filepath_or_buffer, *[, colspecs, ...]) | 读固定宽度的格式文件 |
| read_excel(io[, sheet_name, header, names, ...]) | 读excel文件 |
| DataFrame.to_excel(excel_writer[, ...]) | 写excel文件 |
| ExcelFile(path_or_buffer[, engine, ...]) | 用于将表格格式Excel工作表解析为DataFrame对象的类。 |
| ExcelFile.parse([sheet_name, header, names, ...]) | 解析一个指定的sheet |
| Styler.to_excel(excel_writer[, sheet_name, ...]) | 写指定的sheet |
| ExcelWriter(path[, engine, date_format, ...]) | 用于写入Excel的类 |
| read_json(path_or_buf, *[, orient, typ, ...]) | 从JSON格式读取数据 |
| DataFrame.to_json([path_or_buf, orient, ...]) | 转为为JSON对象字符串 |
| read_html(io, *[, match, flavor, header, ...]) | 从HTML表格读取数据 |
| DataFrame.to_html([buf, columns, col_space, ...]) | 生成HTML表格 |
| Styler.to_html([buf, table_uuid, ...]) | 生成HTML表格 |