Python学习笔记——dataframe基础常用操作

创建dataframe

 直接创建:pd.DataFrame()

import numpy as np
dates = pd.date_range('20160918',periods=6)
df =pd.DataFrame(np.random.randn(6,4), index=dates, columns=list('ABCD'))
print(dates)
print(df)

从外部导入数据

  • 常用_csv格式:pd.read_csv(" 路径 " , encoding = "gbk" 或 "utf-8")
  • excel格式:pd.read_excel(" 路径 ")

查看行列数/索引

  • df.shape
  • df.index 行索引(常用于迭代)
  • df.columns 列索引

更改行列索引

  • df.set_index('省份名称') 将'省份名称'列设为索引
  • df.reset_index(drop=True) 将索引设为"0,1,2,3…",drop=True就是把原来索引列去掉
  • df.columns=[ ]
  • df.rename 详见http://t.csdn.cn/9PYlU

取出想要的行/列/子集

  • df.head(n) 取前面n行
  • df.tail(n) 取后面n行 (可用于累乘取特定想要的数据)
  • df[['省份名称' , 'GDP']] 用列名选取想要的列(注意选取多列有两个方括号)
  • df.loc[行标签 , 列标签]
  • df.iloc[行索引 , 列索引]
  • df[( 条件1 ) & ( 条件2 )] 按多个条件筛选
    • df.列名
    • df["列名”]
  • df.query() #还不怎么会 详见http://t.csdn.cn/ZqPfe

排序

  • df.sort_values(by="列名" , ascending=True升序)
  • df.sort_values(by=["列名1","列名2"] , ascending=True升序)

统计汇总

  • df.mean(axis = 1,skipna 是否忽略缺失值= False)
  • df.describe() 计算汇总统计#均值,标准差,最小,最大值和主要分位数
  • df.cumsum() 样本值得累计和
  • df.groupby('列名') 分组计算
    • df.groupby(['列名1','列名2']).count()  分组计数
    • df.groupby(列名).apply(自定义函数)  自定义函数的参数为列表
      • 对特定的列用自定义函数.apply(lambda x: 自定义函数(x['列名']))
  • 列运算 df1['col'] + df2['col']
  • 纵向合并 concat([df1 , df2]) 详见​​​​​​​http://t.csdn.cn/OZLgE

修改

  • df = df.drop('省份名称', axis=1) 删除列
  • df = df.drop("2000") 删除行
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值