pandas学习笔记(2)


前言

pandas最强大的功能感觉就是对Excel表格进行操作了,下面记录一些基本的操作,此次读取的表格名为test.xlsx,内容如下:

读取表格

读取.xlsx文件使用read_excel函数即可,读取.csv文件使用read_csv即可

import pandas as pd
pd.read_excel('test.xlsx')

可以看出默认的index就是0,1,2,…,如果想让科目名字作为index,修改index_col属性即可

pd.read_excel('test.xlsx', index_col=0)

常用基础操作

使用head和tail方法可以分别查看表格的前5条数据和后5条数据

df=pd.read_excel('test.xlsx', index_col=0)
df.head()

使用describe方法可以对表格中的数据进行简单的描述性统计,默认是以每一列为一个数据项

df.describe()

如果要考察每一门科目的描述性统计,可以先将Dataframe转置,再调用describe方法即可

df.T.describe()

删去某一行,或者某几行:

df.drop(['数学', '语文'])

查看形状,跟numpy里边一样查看shape属性即可:

![Snipaste_2021-02-11_17-53-52](E:%5Cblog_pic%5CSnipaste_2021-02-11_17-53-52.png)df.shape
# 输出:(7,5)

对dataframe按照index排序

df.T.sort_index()

对dataframe按照指定列的值排序:

# by参数指定列名
## 降序排序
df.sort_values(by = 'Mike',ascending = False)
## 升序排序
df.sort_values(by = 'Mike')

生成新的一列:

df['Dark ♂'] = 0
df

然后要啥值,直接选取元素进行赋值即可

导出Dataframe

简单的导出

直接使用.to_excel()即可,该方法的参数如下:

df.to_excel(
    excel_writer,
    sheet_name='Sheet1',
    na_rep='',
    float_format=None,
    columns=None,
    header=True,
    index=True,
    index_label=None,
    startrow=0,
    startcol=0,
    engine=None,
    merge_cells=True,
    encoding=None,
    inf_rep='inf',
    verbose=True,
    freeze_panes=None,
)

常用的参数有这几个:

  • excel_writer:如果是只写入一个Sheet,那么这里传入你要保存的路径即可;如果是要写入多个Sheet,那么要传入一个构造好的writer,后面会有栗子
  • sheet_name:指定写入Sheet的名字
  • na_rep:用于替换空数据的字符串,默认为’’
  • float_format:设置浮点数的格式(几位小数点)
  • columns:要写入的列
  • header:是否保存列名,默认为True,即为保存
  • index:是否保存索引,默认为True,即为保存
  • index_label:索引的列标签名

一次性导出多个Sheet

path = 'result.xlsx'
writer = pd.ExcelWriter(path)
df.to_excel(writer,sheet_name='1')
df.to_excel(writer,sheet_name='2')
df.to_excel(writer,sheet_name='3')
writer.save()

其他导出形式

  • df.to_csv:导出为csv文件
  • df.to_json:导出为json文件
  • df.to_html:导出为html文件
  • df.to_clipboard:导出dataframe到剪贴板,相当于ctrl+c
  • df.to_latex:导出为latex代码
  • df.to_sql:导出为SQL

更多详细教程,可以去官方文档查看


文章作者: Reset Ran
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Reset Ran !
  目录