pandas part I:

# 总结:

  • DataFrame.loc[0:5] 一共6行数据,而切片[0:5]只有5个数据
  • 在对df的行数据删除后,有些index已缺失,此时用 iloc[]来按照位置索引
  • 取指定行 food_info.loc[[2,5,10]],传入list
  • 取指定列 zinc_copper = food_info[["Zinc_(mg)", "Copper_(mg)"]]
  • 取指定后缀名的列:
  • col_names = food_info.columns.tolist()
  • gram_columns = []
  • for c in col_names:
  •   if c.endswith("(g)"):
  •     gram_columns.append(c)
  • food_info.sort_values("Sodium_(mg)", inplace=True)  #默认升序,可以用 ascending=False来降序

pandas part II:

  • 根据age_is_null = titanic_survival["Age"].isnull(), 返回索引,
  • 根据索引的True,False,来获取null的集合: age_null_true = age[age_is_null]
  • 如果某列中有nan,任何运算结果都是nan
  • 取 good_ages = titanic_survival["Age"][age_is_null == False]
  • correct_mean_age = sum(good_ages) / len(good_ages)
  • 但是缺失数据的表很普遍,于是pandas用correct_mean_age = titanic_survival["Age"].mean()来解决nan问题
  • 按要求选取指定行:pclass_rows = titanic_survival[titanic_survival["Pclass"] == this_class]
  • 对指定行的某列进行运算: pclass_fares_mean = pclass_rows["Fare"].mean()
  • 数据透视表: 默认aggfunc为np.mean
  • passenger_survival = titanic_survival.pivot_table(index="Pclass", values="Survived", aggfunc=np.mean)
  • 多列透视表:values传入一个list
  • port_stats = titanic_survival.pivot_table(index="Embarked", values=["Fare","Survived"], aggfunc=np.sum)
  • 去掉有nan的列: titanic_survival.dropna(axis=1) #age canbin embark
  • 去掉指定列中有nan的行 : titanic_survival.dropna(axis=0,subset=["Age", "Sex"])
  • 取指定index行的某列的一个数据: titanic_survival.loc[83,"Age"]
  • 对所有列数据应用函数:
    def not_null_count(column):
      column_null = pd.isnull(column)
      null = column[column_null]
      return len(null)

    column_null_count = titanic_survival.apply(not_null_count)

pandas part III:

  • 获取Series的值 fandango['FILM'].values
  • 取某一列为另一列的索引:series_custom = Series(fandango['RottenTomatoes'].values , index=fandango['FILM'].values)
  • 用series_name限制条件series_greater_than_50 = series_custom[series_custom > 50]
  • 取到所有列的类型:types = fandango_films.dtypes
  • types[types.values == 'float64'].index 本质上是从types 回到 索引上
  • deviations = fandango_films[float_columns].apply(lambda x: np.std(x)) 对所有float类型数据应用方差
  • groupby将一列中的元素进行分组,idxmax取出对应列group的最大索引位置,score_series=df.groupby("ID")["m_score"].idxmax()
  • df.groupby(df['class1'])['data1'] == df['data1'].groupby(df['class1']) 是一个整体,要取出数据,则.idxmax()等操作
  • df.groupby(df['class1'])['data1']  :   <pandas.core.groupby.SeriesGroupBy object at 0x000001F1CEDF0AC8>

pandas小结的更多相关文章

  1. pandas用法小结

    前言 个人感觉网上对pandas的总结感觉不够详尽细致,在这里我对pandas做个相对细致的小结吧,在数据分析与人工智能方面会有所涉及到的东西在这里都说说吧,也是对自己学习的一种小结! pandas用 ...

  2. python4delphi import lxml pandas 出错的小结

    环境: 1.win10 64位 2.delphi xe8 3.python2.7 4.python4delphi  (svn 2015-03-21 发布的83版本号) 5.lxml 3.4.4(通过p ...

  3. python中pandas里面的dataframe数据的筛选小结

    pandas大家用的都很多,像我这种用的不够熟练,也不够多的就只能做做笔记,尽量留下点东西吧. 筛选行: a. 按照列的条件筛选 df = pandas.DataFrame(...) # suppos ...

  4. pandas replace函数使用小结

    http://blog.csdn.net/kancy110/article/details/72719340

  5. scikit-learn随机森林调参小结

    在Bagging与随机森林算法原理小结中,我们对随机森林(Random Forest, 以下简称RF)的原理做了总结.本文就从实践的角度对RF做一个总结.重点讲述scikit-learn中RF的调参注 ...

  6. scikit-learn 梯度提升树(GBDT)调参小结

    在梯度提升树(GBDT)原理小结中,我们对GBDT的原理做了总结,本文我们就从scikit-learn里GBDT的类库使用方法作一个总结,主要会关注调参中的一些要点. 1. scikit-learn ...

  7. 用scikit-learn和pandas学习Ridge回归

    本文将用一个例子来讲述怎么用scikit-learn和pandas来学习Ridge回归. 1. Ridge回归的损失函数 在我的另外一遍讲线性回归的文章中,对Ridge回归做了一些介绍,以及什么时候适 ...

  8. pandas 对数据帧DataFrame中数据的索引及切片操作

    1.创建数据帧 index是行索引,即每一行的名字:columns是列索引,即每一列的名字.建立数据帧时行索引和列索引都需要以列表的形式传入. import pandas as pd df = pd. ...

  9. 第三周 数据分析之概要 Pandas库入门

    Pandas库介绍: Pandas库引用:Pandas是Python第三方库,提供高性能易用数据类型和分析工具 import pandas as pd Pandas基于NumPy实现,常与NumPy和 ...

随机推荐

  1. django使用QQ企业邮箱发送邮件

    一.首先申请QQ企业邮箱 免费QQ企业邮箱地址如下:https://exmail.qq.com/signupfree?refer=intro#signup/free 二.配置自己的域名 在域名解析中添 ...

  2. 201621123016 《Java程序设计》第八周学习总结

    1. 本周学习总结 2. 书面作业 1. ArrayList代码分析 1.1 解释ArrayList的contains源代码 ArrayList在调用contains方法时会调用indexOf方法得到 ...

  3. HDU5908【模拟】

    思路: 找到约数k,然后算一下1-k区间里的数的个数. 中间交换一下就好了,然后把后面每个区间里的数减减,然后再判断一下满足不满足= = #include <bits/stdc++.h> ...

  4. mysql项目实战经验

    一.项目的编码设置   目的:避免出现莫名其妙错误,笔者曾经就碰到因编码不对返回null而浪费大量时间:统一的编码可以减少解析的时间,提高效率 1.1修改my.ini文件 一般在C:\Program ...

  5. __enter__,__exit__上下文管理协议

    上下文管理协议__enter__,__exit__ 用途或者说好处: 1.使用with语句的目的就是把代码块放入with中执行,with结束后,自动完成清理工作,无须手动干预 2.在需要管理一些资源比 ...

  6. laravel-admin 配置富文本编辑器流程

    laravel-admin默认去除富文本编辑器的,官方也给出了配置方法. 我配置的是wangEditor,本来配置完后就能愉快得使用了,可万万没想到还是有坑的.默认是用base64上传的,也就是数据库 ...

  7. Ubuntu-通过v2版本的rancher安装部署k8s

    环境: ubuntu:16.04+(64位) CPU:2C MEM:>4G docker:17.03.2 1.13.1 1.12.6 基础配置:(若是云服务器,下列只需要放行端口) >&g ...

  8. 关于gc日志中Desired Survivor的疑问和对象晋升老年代的小结

    问题背景 (下面的所有内容都是根据书上的Serial/Serial Old收集器下的情况) 在<深入理解JVM>一书中的——3.6.3长期存活的对象将进入老年代的介绍中, 一个例子的jvm ...

  9. axios 访问和返回拦截,token处理,返回异常统一处理

    在axios文件夹中,index.js添加拦截 访问拦截: import store from '../store' axios.interceptors.request.use( config =& ...

  10. Storm编程入门API系列之Storm的Topology默认Workers、默认executors和默认tasks数目

    关于,storm的启动我这里不多说了. 见博客 storm的3节点集群详细启动步骤(非HA和HA)(图文详解) 建立stormDemo项目 Group Id :  zhouls.bigdata Art ...