pandas.read_excel
pandas.read_excel(io, sheet_name=0, header=0, names=None, index_col=None)
读取Excel文件并转化为DataFrame结构
Parameters
- io: str, bytes, ExcelFile, xlrd.Book, path object, or file-like object
- header: int, list of int, default 0
默认将第0行设置为DataFrame的列标签,也可指定任一行为列标签;如果excel文件中没有列标签,则将其设置为None - index_col: int, list of int, default None
默认用序列[0-n]作为DataFrame的行标签
Example
新建一个temp.xlsx文件
import pandas as pd
pd.read_excel('./temp.xlsx')
Name Value
0 string1 1
1 string2 2
2 #Comment 3
df = pd.read_excel('./temp.xlsx', index_col=None, header=0)
print(df)
df.shape
Name Value
0 string1 1
1 string2 2
2 #Comment 3
(3, 2)
pandas中,行列标签不计入df的shape中
pandas.DataFrame.set_index
pandas.DataFrame.set_index API:
DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)
将已存在的列设置为DataFrame的行标签
Parameters
1. keys: label or array-like or list of labels/arrays
这个参数可以是单个列标签、含有多个列标签的列表、与DataFrame行数相同的一维Series数组、含有列标签和Series数组的列表……
2. drop: bool, default True
删除原先的列,并将其作为新的行索引
Example
import pandas as pd
df = pd.DataFrame({'month': [1, 4, 7, 10],
'year': [2012, 2014, 2013, 2014],
'sale': [55, 40, 84, 31]
})
df
month year sale
0 1 2012 55
1 4 2014 40
2 7 2013 84
3 10 2014 31
df.set_index('month')
year sale
month
1 2012 55
4 2014 40
7 2013 84
10 2014 31
df.set_index([pd.Index([1, 2, 3, 4]), 'year'])
month sale
year
1 2012 1 55
2 2014 4 40
3 2013 7 84
4 2014 10 31
numpy.sum()
numpy.sum() API
在某个axis上对numpy数组求和
sum(a, axis=None, dtype=None, out=None, keepdims=np._NoValue)
a是求和对象
axis=0: 沿着行做垂直方向的运算,将Numpy数组压缩成一行
axis=1: 沿着列做水平方向的运算,将Numpy数组压缩成一列
阅读文章: numpy.sum()的使用
pandas.DataFrame.stack
stack的意思是堆叠,堆积
DataFrame结构中,表格在行列方向上均有索引,而将DataFrame进行Stack后,只有列方向
上的索引,这类似于层次化的Series结构。stack函数会将数据从表格结构
变成花括号结构
,即将其行索引变成列索引,反之,unstack函数将数据从花括号结构
变成表格结构
,即要将其中一层的列索引变成行索引。
但是将DataFrame进行stack的目的是什么?