在开发过程中,pandas转化为dataFram经常用到一些常用操作,这里做一些总结。
需要下载的依赖:
pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install xpinyin
1、读取student.xlsx信息
df = pd.read_excel("C:\\Users\\Desktop\hs\\student.xlsx")
name classRoom sex age address
0 张三 c202201 男 15 商丘
1 李四 c202202 女 17 平顶山
2 王五 c202203 男 15 濮阳
3 马六 c202204 女 16 驻马店
2、增加一列【pinyin】,将姓名转化为拼音
df['pinyin'] = df['name'].apply(lambda x: Pinyin().get_pinyin(x).replace("-", ""))
name classRoom sex age address pinyin
0 张三 c202201 男 15 商丘 zhangsan
1 李四 c202202 女 17 平顶山 lisi
2 王五 c202203 男 15 濮阳 wangwu
3 马六 c202204 女 16 驻马店 maliu
3、df['x']:取列名为'x'的列,格式为series
s1=df['name']
type(s1) # <class 'pandas.core.series.Series'>
4、df[['x']]:取列名为'x'的列,格式为Dataframe,df[['w','z']]:取多列时需要用Dataframe的格式
df1=df[['name', 'age']]
type(df1) # <class 'pandas.core.frame.DataFrame'>
5、选取年龄大于15的信息
df2 = df[df['age'] > 15]
type(df2) # <class 'pandas.core.frame.DataFrame'>
name classRoom sex age address pinyin
1 李四 c202202 女 17 平顶山 lisi
3 马六 c202204 女 16 驻马店 maliu
6、取出name的值,结果为数组
df3 = df['name'].values
type(df3) # <class 'numpy.ndarray'>
type(df3[0]) # <class 'str'>
['张三' '李四' '王五' '马六']
7、存储dataFram为xlsx
df.to_excel('C:\\Users\\Desktop\hs\\test.xlsx', sheet_name='信息', index=False)