Python教程

Python之pandas模块

本文主要是介绍Python之pandas模块,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

只保留需要的列:

df = df[['列1', '列2', '列3']]

新增一列:

df1['列名']=['行1值','行2值','行3值','行4值'] # 增加列的元素个数要跟原数据列的个数一样

指定位置新增一列:

col_name=df1.columns.tolist() # 将数据框的列名全部提取出来存放在列表里
col_name.insert(2,'列名') # 在列索引为2的位置插入一列,列名为:city,刚插入时不会有值,整列都是NaN
df1=df1.reindex(columns=col_name) # DataFrame.reindex() 对原行/列索引重新构建索引值
df1['列名']=['行1值','行2值','行3值','行4值'] # 给city列赋值

新增一行:

import pandas as pd
重要!!先创建一个DataFrame,用来增加进数据框的最后一行
new=pd.DataFrame({'name':'lisa','gender':'F','city':'北京','age':19,'score':100},index=[1])

  • 自定义索引为:1 ,这里也可以不设置index
    df1=df1.append(new,ignore_index=True)
  • ignore_index=True,表示不按原来的索引,从0开始自动递增

更换单值,loc和iloc 可以更换单行、单列、多行、多列的值

[先行,后列]
df1.loc[0,'列名']=25 # 思路:先用loc找到要更改的值,再用赋值(=)的方法实现更换值
df1.iloc[0,2]=25 # iloc:用索引位置来查找

按某列的值排序

df= df.sort_values(by='列名',ascending=False)

  • ascending:false 降序

excel新增Sheet:

import pandas as pd
data = pd.DataFrame()
writer = pd.ExcelWriter('model_predict.xlsx',mode='a', engine='openpyxl',if_sheet_exists='new')
data.to_excel(writer, sheet_name='sheet1')
writer.save()
writer.close()

  • model:有两个参数,{'w', 'a'}, default 'w'。'w'代表write,'a'代表append。不覆盖原文件选择追加使用‘a’。
  • engine:现在已有的的写入excel模块包含openpyxl和xlsxwriter,default 'xlsxwriter',xlsxwriter模块不支持append追加操作,需要追加新的sheet操作选择'openpyxl'参数,否则会报错。
  • if_sheet_exists:{'error', 'new', 'replace'}, default 'error',写入的sheet name已存在时代码操作,默认'error'表报错, 'new'表engine自动创建新的其他sheet name, 'replace'表覆盖原sheet数据。
这篇关于Python之pandas模块的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!