# 导入

import numpy as np

import pandas as pd

# 查看版本

pd.__version__

文本文件的读取: 对于csv或txt后缀的文本文件,用read_csv函数来实现文件的导入。重要参数的含义如下

pd.read_csv(file_path_or_buffer, #指定导入文件的具体路径

sep = ', ', # 指定元数据中各种变量之间的分割符,默认是逗号,可自行修改

header='infer' , #默认将数据集首行作为表头(列名),若原数据集无表头则设置为header=None

names=None, # 若原数据集中无变量名称 , 可通过该参数在数据读取时设定

index_col = None, # 指定将某些行作为行索引

usecols = None, # 指定需要读取的变量名

converters = None , # 通过字典格式,为数据集中的某些变量设置不同的数据

skiprows = None, # 数据读取时,指定需要跳过原数据集的起始行数

skipfooter = 0, # 读取数据时,指定需要跳过原数据集的末尾行数

nrows = None, # 指定数据读取的行数

comment = None,# 指定注释符,读取数据时遇到行首指定的注释符则跳过该行

encoding = None, # 设置编码方式,解决中午乱码问题 (通常设置为utf-8或给gbk))

数据读取进来之后形成的表格在pandas中称为DataFrame,这是一个带有索引的二维数据结构,每一行都有索引,数据读取进来的时候会生成从0开始的整数索引

pd.read_excel() 读取xls、xlsx后缀的excel电子表格数据 和read_csv一样

# 数据探索

df.head() # 查看导入数据的前五行  # df.head(10)  看前十行

df.tail(7) # 查看数据的后七行

df.shape # 查看数据的规模

df.index # 查看数据的行索引

df.columns # 查看数据列名

df.info() # 查看整体信息

df.describe() # 进行简单描述统计

df.isnull() # 查看数据集是否有缺失值

df.isnull().sum() # 对缺失值进行统计 每一个列里面的缺失值都会出来

df.isnull().sum(axis=1) # 对每一行的缺失值统计  axis=1行  axis=0列

df.duplicated() # 查看数据集是否有重复值

# 数据选取

提取某列 df["gender"]

注意 提取出来的单列或者单行是另一种数据类型 series 也是带有名称和索引的一维数组

提取行 df[5:11] 左闭右开 5到10行

基于标签的索引 loc  l为label  没有左闭右开 直接提取5到10行

df.loc[5:10, ['name', ['age'], ['custom_amt']]]  # 提取五到十行并返回姓名年龄交易额散列

df1 = df.set_index('name')   # 将name这一列作为索引

df1.loc['姓名', :] 读取这位用户的全部信息

df.loc[df['age']<20, :] 提取出所有年龄小于20的信息

基于位置的索引 iloc

df.iloc[0:5, 0:3] # 提取前五行前三列的数据

#随机抽样

df.sample(n=None,  # 指定抽样的数量,默认为1

frac=None, # 按比例进行抽样

replace=False, # 是否允许抽样样本数量高于数据集的数量

weights=None, # 样本权重

random_state=None, # 随机数种子

axis = None, # 对行采样还是对列采样,默认对行采样)

新增一列 df2.loc[: , "权重"]=W w是一个列表


PREVIOUS_MAX_ROW = pd.options.display.max_rows

pd.options.display.max_rows = 20  # 设置显示最大行

np.random.seed(12345)

处理缺失值  NaN: Not a Number NA:Not available

isnull() 判断是否为缺失值

data.dropna()   dropna要用一个新的变量保存 原变量是不会变的

data.fillna(0)  填充缺失值

df.fillna({1:0.5, 2:0}) 第一列填充0.5 第二列填充0

删除重复值

data.duplicated() 判断之前是否出现过

data.drop_duplicates() 删除重复值

data.drop_duplicate(['列名'], keep='last') 删除某一列重复值 保留最后一个

Pandas数据清洗总结相关推荐

  1. 2.pandas数据清洗

    2.pandas数据清洗 pandas是用于数据清洗的库,安装配置pandas需要配置许多依赖的库,而且安装十分麻烦. 解决方法:可以用Anaconda为开发环境,Anaconda内置了许多有关数据清 ...

  2. python pandas数据清洗:sample()函数

    DataFrame.sample DataFrame.sample方法主要是用来对DataFrame进行简单随机抽样的. PS:这里说的是简单随机抽样,表示是不能用来进行系统抽样.分层抽样的. Dat ...

  3. pandas数据清洗:案例详解 fillna函数 填补空缺值

    pandas数据清洗:fillna函数填补空缺值 1 fillna函数简介 2 填补空缺值3种方法 2.1 构建学习数据 2.2 填补特定值 2.3 用前一个非空缺值填充 2.4 用后一个非空缺值填充 ...

  4. pandas数据清洗:drop函数案例详解、dropna函数案例详解、drop_duplicates函数案例详解

    pandas数据清洗:drop函数.dropna函数.drop_duplicates函数详解 1 drop函数简介 1.1 构建学习数据 1.2 删除行两种方法 1.3 删除列两种方法 2 dropn ...

  5. Pandas数据清洗工具箱

    选自medium,作者:Darren Burns 本文转自机器之心(nearhuman2014) 在用pandas进行数据处理时,同一个操作经常会重复很多次,由于这些常见的场景涉及到不同类型的数据集, ...

  6. python.pandas数据清洗(数据填充与条件删除)

    在数据挖掘中,数据清洗占很大一部分工作,数据清洗是一件比较繁琐的事情. 本文介绍一下问题的解决方案: 1. 读入csv文件,条件过滤缺失值的行或者列 2. DataFrame数据的缺失值填充 3. A ...

  7. python-数据分析-(12)pandas数据清洗、缺失值、重复值、异常值处理常见方法

    一.导入模块 import pandas as pd from scipy.interpolate import interp1d 二.读取excel文件 data=pd.read_excel(r'E ...

  8. python pandas数据清洗_Pandas进行数据清洗的方法介绍

    Pandas进行数据清洗的方法介绍,数据清洗是一项复杂且繁琐的工作,同时也是整个数据分析过程中最为重要的环节.Pandas中常见的数据清洗操作有空值和缺失值的处理.重复值的处理.异常值的处理.统一数据 ...

  9. 某通讯录同步助手pandas数据清洗

    '''因为换手机需要导入通讯录产生的数据清洗需求使用某通讯录同步助手,产生联系人姓和名的索引问题导出联系人到本地,选择.csv格式观察数据,发现'姓'列有一部分是',','名'列也差不多 print( ...

  10. 【pandas数据清洗与处理】项目7-国产烂片深度分析

    1.读取数据,以"豆瓣评分"为标准,看看电影评分分布,及烂片情况 要求: ① 读取数据"moviedata.xlsx" ② 查看"豆瓣评分" ...

最新文章

  1. eclipse c语言_如果你的电脑是windows7/10的环境,用什么编译器学习C语言好?
  2. 欠阿里云一分钱,会是什么样的后果...
  3. 怎样将.dotnetcharting控件生成的图标打印
  4. securecrt配置linux账号密码,配置SecureCRT密钥连接Linux
  5. Oracle GoldenGate经典架构
  6. OSChina 周日乱弹 ——局长才是真神
  7. linux svn 拉取代码_svn快速入门指南
  8. Java对MongoDb的CURD操作
  9. 大萧条来临前的几大征兆
  10. 复变函数在计算机科学中的应用,复变函数的应用以及发展史
  11. Java常用框架有哪些?
  12. AVR 上的汇编圈圈操作系统
  13. *TEST 3 for NOIP 哈希有毒
  14. mysql查询表的列名_查看表所有列名SQL
  15. 机器学习笔记之深度信念网络(一)背景介绍与结构表示
  16. selenium登录豆瓣网
  17. Exe文件开机启动,隐藏运行窗口运行
  18. Node.js:knex.js数据库MySQL query builder
  19. 计算机考试打字题题库6,2018四至六年级电脑测试题
  20. Linux系统怎么复制文件夹下的全部文件到另外文件夹?

热门文章

  1. 个人量化交易初探之一(数据的爬取)
  2. javascript视频教程下载
  3. 基于单片机的电子密码锁设计
  4. 天龙八部稳定服务器,献给天龙八部Online的Fans们--职业玩家及所在服务器
  5. 假如时光倒流我会这么学java
  6. BIN文件和HEX文件区别
  7. 重温经典:Windows1.0系统体验和尝试自己编写Windows1.0系统
  8. Resource Hacker软件更换应用图标
  9. 巨蟒python全栈开发-第5天 字典集合
  10. 通过 DataEase 获取 API 数据完成项目周报分享