首页 > 其他分享 >pandas数据处理基础-数据读取/数据选择

pandas数据处理基础-数据读取/数据选择

时间:2023-04-17 12:44:37浏览次数:236  
标签:读取 填充 df DataFrame -- iloc 数据 pandas

数据读取

df=pd.read_csv("相对路径或者网址") 呈现的结果是一个二维数组,dataframe结构;

df.head()----显示的是前5行数据

df.tail(7)----显示的是后7行数据

df.describe()----对数据进行描述

df.values----将dataframe转换为numpy数组结构

df.index--查看索引 df.columns--查看行名  df.shape--查看形状

数据选择

基于索引数字选择  df.iloc[]

df.iloc[:3]--选择前3行数据

df.iloc[5]--选择第6行

df.iloc[[1,3,5]]--选择第2,4,6行数据(因为[]中有[行,列])

df.iloc[:,1:4]--选择第2-4列

df.iloc[1:4,3:6]--选择第2-4行和第4-6列

基于标签名称选择  df.loc[] 

df.loc[0:2]--代表的是第1-3行,df.iloc[0:2]--代表的是第1-2行

df.loc[1:4,'Total Males':]---选择连续的行,用:的话不需要[],选择不连续的行,用[]。

数据删减

df.drop(labels=['Median Age', 'Total Males'],axies=1)---labels不要也可以,直接df.drop(['Median Age', 'Total Males'],axies=1)---或者df.drop(columns=['Median Age', 'Total Males'])

df.drop([0,1])--删掉0,1行

df.drop_duplicates()--剔除数据集中的重复行

df.drop_duplicates(subsets=['Total Population'])--subsets删除指定列的重复数据

df.drop_duplicates(subset=['Total Population'], keep='last')---keep删除重复项并保留最后一次出现

df.dropna()--删除缺少值

数据填充

需要先检测是否有缺失值

检测缺失值

NaN指not a number;NaT指 not a TIME 时间戳的缺失

#df=pd.DataFrame(np.random.rand(9,5),columns=list('ABCDE'))----创建9✖5的矩阵,总共5列

#df.insert(value=pd.Timestamp('2017-10-1'),loc=0,column='Time')--在第一列插入列名是Time的内容为2017-10-1的时间序列

#df.iloc[[1,3,5,7],[0,2,4]]=np.nan--缺失值赋值

df.isna()--是否是缺失值      

对于缺失值处理的方法— 1、填充 2、剔除

剔除直接用dropna()

填充用fillna()

1)直接用标量填充 df.fillna(0);

2)通过参数将缺失值前面或后面的值填充给缺失值;前面--df.fillna(method='pad'),后面--df.fillna(method='bfill');

df.fillna(method='pad',limit=1)--对于连续缺失值向前填充,可以限制填充行数;

3)用平均值填充指定列 df.fillna(df.mean()['C':'E'])

df.fillna(df.mean()[0:3])--???为什么是第1到第3列填充

插值填充

interpolate()--线性插值

方法:method='quadratic'---如果数据增长速率越来越快,用此方法; method='pchip'---数据集呈现出累计分布的样子;

method='akima'--需要填补缺省值,以平滑绘图为目标;

数据可视化

NumPy,Pandas,Matplotlib 构成了一个完善的数据分析生态圈,所以 3 个工具的兼容性也非常好,甚至共享了大量的接口。

当我们的数据是以 DataFrame 格式呈现时,可以直接使用 Pandas 提供的 DataFrame.plot()方法调用 Matplotlib 接口绘制常见的图形。

df_interpolate.plot()---df_interpolate即为DataFrame的表名

其他样式的图形指定 kind= 参数即可,如柱状图

df_interpolate.plot(kind='bar')

 

 

 

        

 

标签:读取,填充,df,DataFrame,--,iloc,数据,pandas
From: https://www.cnblogs.com/anqierzp/p/17318001.html

相关文章

  • Seata:连接数据与应用
    作者:季敏(清铭)Seata开源社区创始人,分布式事务团队负责人。本文主要介绍分布式事务从内部到商业化和开源的演进历程,Seata社区当前进展和未来规划。Seata是一款开源的分布式事务解决方案,旨在为现代化微服务架构下的分布式事务提供解决方案。Seata提供了完整的分布式事务解决方案,包......
  • 高性能存储SIG月度动态:ANCK ublk完成POC测试,EROFS优化xattr元数据开销
    高性能存储技术SIG(SpecialInterestGroup)目标:高性能存储技术兴趣组致力于存储栈性能挖掘,当前主要聚焦内核io_uring技术优化异步IO性能,使用持久化内存提升业务单成本性能,容器场景存储技术优化等课题。期望通过社区平台,打造标准的高性能存储技术软件栈,推动软硬件协同发展。01......
  • 从此告别写SQL!DataLeap帮你零门槛完成“数据探查”
     更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群在日常数据处理工作中,产品、运营、研发或数据分析师经常会面临数据量大且混乱、质量参差不齐的问题,需要花费大量时间和精力校验表数据是否完整、是否有空值,表数据是否有异常、主键是否重复等。......
  • 从此告别写 SQL!DataLeap 帮你零门槛完成“数据探查”
    更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群在日常数据处理工作中,产品、运营、研发或数据分析师经常会面临数据量大且混乱、质量参差不齐的问题,需要花费大量时间和精力校验表数据是否完整、是否有空值,表数据是否有异常、主键是否重复等......
  • 灵活、快捷、低运维成本的数据集成方法:数据联邦架构
    在传统的企业数据运用中,企业使用多种系统,数据散落在各个存储设备中,数据分析需求往往是跨库的,数据入湖入仓在做分析会有安全问题,或影响业务系统性能。企业需要一种灵活、快捷、低运维成本的数据集成方法,就有了数据联邦架构。本文介绍数据联邦架构。  —数据联邦概述—在传......
  • 河北稳控科技多通道振弦传感器无线采集仪参数的读取与修改
    河北稳控科技多通道振弦传感器无线采集仪参数的读取与修改 配置工具的参数配置区列出了与设备工作相关的所有参数项,每个参数项有【读取】和【修改】两个按钮,点击【读取】按钮获得设备的当前参数值,点击【设置】按钮将当前界面显示的值写入设备。注:参数修改后,必须点击【系统】......
  • mysql数据库的登录脚本
    ######################## ku脚本:可以使用以下ku脚本,它可以根据提供的参数登录到MySQL数据库:#!/bin/bash#Checkforcorrectnumberofargumentsif[$#-lt1];thenecho"Usage:$0<ip>[<port>][<mysqloptions>]"exit1fi#SettheIPaddressand......
  • 多通道振弦传感器无线采集仪参数的读取与修改
    多通道振弦传感器无线采集仪参数的读取与修改配置工具的参数配置区列出了与设备工作相关的所有参数项,每个参数项有【读取】和【修改】两个按钮,点击【读取】按钮获得设备的当前参数值,点击【设置】按钮将当前界面显示的值写入设备。注:参数修改后,必须点击【系统】面板内的【保存参......
  • pandas.Series 获取时间年、月等信息
    注意事项dt.XX后面不加括号zz的数据类型为datetime64[ns]zz=pd.Series(pd.to_datetime(时间戳,unit='s'))#获取日期月份bb=zz.dt.month#获取年月日bb=zz.dt.date#获取星期名称bb=zz.dt.day_name()#一年中的第几周bb=zz.dt.isocalendar().week......
  • h2数据库
    H2是一个采用Java开发开源的嵌入式SQL数据库。它支持集群,提供JDBC和部分ODBCAPI,采用C/S模型。它还包括一个用于管理数据库的Web客户端,直接使用浏览器作为数据库的管理平台,同时也可以作为MySQL,SQLSERVER,ORACLE等主流数据库的管理工具,多语言支持(包括中文),管理界面具有自动提示功能。......