np读取csv文件_被 Pandas read_csv 坑了

69bccf22d77b2abc00eea815239522b7.png

-- 不怕前路坎坷,只怕从一开始就走错了方向

Pandas 是python的一个数据分析包,纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas 就是为解决数据分析任务生的,无论是数据分析还是机器学习项目数据预处理中, Pandas 无处不在。

最近掉进一坑,差点铸成大错。实在没想到居然栽在pandas.read_csv上了,这里分享一下,希望大家注意。

另:业务数据不方便拿出来演示,为尽可能复现,这里我手造了一份,另存为 income.csv 文件。

a1ed2075a6746fc16d49e47b1137d00b.png

翻船记

读取csv文件小菜一碟

import numpy as np
import pandas as pd
df = pd.read_csv(r'C:...income.csv',encoding='utf-8')

读好了看看数据信息吧:

df.info()RangeIndex: 6 entries, 0 to 5
Data columns (total 1 columns):#   Column  Non-Null Count  Dtype 
---  ------  --------------  ----- 0   income  6 non-null      object
dtypes: object(1)
memory usage: 176.0+ bytes

诶,怎么数据成了object?不应该是float吗?

不管他,硬转一发

df=pd.DataFrame(df,dtype=np.float)

居然报错了,1000被读成了字符串。

e1df9a878d26e8a0bf1bb7ecf892ebb8.png

其实这里我还掉进了另一个坑,使用了一个已被弃用的 .convert_objects 方法。这种方法更硬,直接把string转成了NaN,所以后面各种操作流畅且错误地进行着....这都是 pandas 没升级的锅,定期检查升级包太有必要了(pip 的高阶玩法)

说回刚才的问题,1,000被读成了字符串是因为csv文件中它使用了千位分隔符。问题其实非常简单,设置一下 thousands 参数就行了

df2 = pd.read_csv(r'C:...income.csv',encoding='utf-8',thousands =',')

看一下info

df2.info()<class 'pandas.core.frame.DataFrame'>
RangeIndex: 6 entries, 0 to 5
Data columns (total 1 columns):#   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  0   income  6 non-null      float64
dtypes: float64(1)

往下继续

df2.describe()income
count 6.000000
mean 16934.983333
std 40695.203980
min 0.000000
25% 32.425000
50% 300.000000
75% 875.000000
max 100000.000000

一切正常!

pandas.read_csv()参数

3672920677625d008ef9cfb1bfc0a73f.png

pandas.read_csv()的参数特别多,除了filepath,其他均可缺省。参数的具体含义这里就不赘述,还想复习一下的同学可以直接去看官方文档

http://pandas.pydata.org/pandas-docs/stable/io.html

英语不好的同学可以看一下热心博主的翻译版: https://www.cnblogs.com/datablog/p/6127000.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/371321.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

铃木uy125摩托车机油_UY125 新瑞梦UM125发布 济南铃木于湖南株洲吹响国IV集结号...

​4月18日&#xff0c;济南铃木在湖南株洲天台开元酒店举行了2019年新品发布会&#xff0c;并于现场发布了两款极具终端战略意义的新款国IV车型&#xff0c;分别为定位“实用运动”的全新个性化踏板车型UY125&#xff0c;以及能够进一步巩固济南铃木在国IV入门级踏板车型领域绝…

js判断时间是早上还是下午_牛奶早上喝好,还是晚上喝好?没想到“最佳时间”是这个点,颠覆了!...

都说喝牛奶好&#xff0c;要多喝。可什么时间喝牛奶最好呢&#xff1f;是饭前、饭后还是睡前&#xff1f;又或者喝酒前&#xff1f;确实得好好说说。传言&#xff1a;空腹时身体比较缺能量&#xff0c;牛奶里的蛋白会去提供能量&#xff0c;不会去构成和修复组织(比如修复皮肤)…

Python TK编程第一部分 Hello Again

当你想写大一点的程序的时候&#xff0c;将你的代码封装到一个或者多个类里会是一个不错的办法。下面hello world这个例子来自Matt Conway的Tkinter Life Preserver. [python]view plain copy from Tkinter import * class App: def __init__(self, master): …

视网膜脱离oct报告图_刚刚,爱尔眼科发布关于艾芬医生诊疗过程的核查报告

刚刚&#xff0c;爱尔眼科医院集团发布关于艾芬女士诊疗过程的核查报告&#xff0c;内容如下&#xff1a;得悉艾芬女士对武汉爱尔眼科医院白内障诊疗存疑&#xff0c;爱尔眼科医院集团高度重视&#xff0c;第一时间成立了工作组奔赴武汉&#xff0c;对事件的诊疗全过程开展了核…

20145233《网络对抗》第二周 后门原理与实践

20145233《网络对抗》第二周 后门原理与实践 实验内容 windows主机与kali虚拟机实现互联互通使用netcat获取主机操作Shell&#xff0c;cron启动使用socat获取主机操作Shell, 任务计划启动使用MSF meterpreter生成可执行文件&#xff0c;利用ncat或socat传送到主机并运行获取主机…

Spring 3.1:缓存和EhCache

如果在网上查找使用Spring 3.1内置缓存的示例&#xff0c;那么通常会碰到Spring的SimpleCacheManager &#xff0c;Spring的家伙说这对“用于测试或简单的缓存声明很有用”。 实际上&#xff0c;我更喜欢将SimpleCacheManager看作是轻量级的&#xff0c;而不是简单的。 在您希望…

mysql-表完整性约束

阅读目录 一 介绍二 not null与default三 unique四 primary key五 auto_increment六 foreign key七 总结一 介绍 回到顶部 约束条件与数据类型的宽度一样&#xff0c;都是可选参数 作用&#xff1a;用于保证数据的完整性和一致性主要分为&#xff1a; PRIMARY KEY (PK) 标识…

可消费消息数量_17 个方面,综合对比 主流消息队列

一、资料文档二、开发语言三、支持的协议四、消息存储五、消息事务六、负载均衡七、集群方式八、管理界面九、可用性十、消息重复十一、吞吐量TPS十二、订阅形式和消息分发十三、顺序消息十四、消息确认十五、消息回溯十六、消息重试十七、并发度本文将从&#xff0c;Kafka、Ra…

opencv2.4.13+python2.7学习笔记--使用 knn对手写数字OCR

阅读对象&#xff1a;熟悉knn、了解opencv和python。 1.knn理论介绍&#xff1a;算法学习笔记&#xff1a;knn理论介绍 2. opencv中knn函数 路径&#xff1a;opencv\sources\modules\ml\include\opencv2\ml\ml.hpp 3.案例 3.1数据集介绍 我们的目的是创建一个可以对手写数字进行…

热启动必须联网吗_供暖结束,地暖是关闭供水阀门还是关闭回水阀门?你做对了吗?...

天气渐渐暖和起来很多城市都停止供暖了一些家庭也停止使用地暖那么今天就来聊一聊&#xff0c;停止供暖后地暖系统应该怎么保养地暖不用时候是关闭供水阀门还是关闭回水阀门&#xff1f;供暖结束 暖气阀门到底要不要关一般来说&#xff0c;我们供暖期结束是不用关闭总阀门的。因…

python学习(九) 网络编程学习--简易网站服务器

python 网络编程和其他语言都是一样的&#xff0c;服务器这块步骤为&#xff1a;1. 创建套接字2. 绑定地址3. 监听该描述符的所有请求4. 有新的请求到了调用accept处理请求 Python Web服务器网关接口&#xff08;Python Web Server Gateway Interface&#xff0c;简称“WSGI”&…

按条件分类_保税仓储企业能否同时存储非保货物?“仓储货物安装台分类监管”如何申请?...

保税仓储企业能否同时存储非保货物呢&#xff1f;保税和非保货物是不是真的不能同在一个“屋檐下”呢&#xff1f;哪些企业可以开展“仓储货物按状态分类监管”业务&#xff1f;企业又该如何申请该项业务&#xff1f;本文就对这些问题进行一下梳理。什么是“仓储货物按状态分类…

ZooKeeper的原理(转)

一、ZooKeeper的角色 领导者&#xff08;Leader&#xff09;&#xff0c;负责进行投票的发起和决议&#xff0c;更新系统状态。 学习者&#xff08;Learner&#xff09;&#xff0c;包括跟随者&#xff08;Follower&#xff09;和观察者&#xff08;Observer&#xff09;&#…

java课堂笔记

转载于:https://www.cnblogs.com/16-C-kai/p/6567042.html

Spring– DAO和服务层

欢迎来到Spring教程的第三部分。 在这一部分中&#xff0c;我们将继续编写Timesheet应用程序&#xff0c;这次我们将实现DAO层&#xff0c;业务服务并编写一些测试。 在上一部分中&#xff0c;我们定义了GenericDao接口&#xff0c;该接口告诉我们需要对实体执行哪些操作。 现在…

51nod 1907(多项式乘法启发式合并)

题目&#xff1a; 分析&#xff1a; 对于一个确定的生成子图&#xff0c;很明显是在一个连通块上走&#xff0c;走完了再跳到另一个连通块上&#xff0c;假设连通块个数为cnt&#xff0c;那么答案一定是$min(a_{cnt-1},a_cnt,..,a_{n-1})$ 那现在的问题就是如何求出对于原图而言…

煮饭的机器人作文_公示|“笔随我心、心由笔动”作文大赛获奖名单

卡士大昌杯“笔随我心、心由笔动”获奖作品开平的咸汤圆滑轮记&#xff0f;我的宅家成长记折叠式小屋&#xff0f;夕阳&#xff0f;包粽子在过去的卡士大昌杯“笔随我心、心由笔动”作文活动中我们收到了许多优秀投稿经过专业团队评选得出获奖选手作品如下主办方协办方一等奖《…

JavaFX 2 GameTutorial第5部分

介绍 这是与JavaFX 2 Game Tutorial相关的六部分系列的第五部分。 我知道自从我写关于游戏的博客以来已经很长时间了&#xff0c;但希望您仍然与我在一起。 如果您想回顾一下&#xff0c;请阅读第1部分 &#xff0c; 第2 部分 &#xff0c; 第3 部分和第4 部分 &#xff0c;以了…

Hive中的数据库、表、数据与HDFS的对应关系

1、hive数据库 我们在hive终端&#xff0c;查看数据库信息&#xff0c;可以看出hive有一个默认的数据库default&#xff0c;而且我们还知道hive数据库对应的是hdfs上面的一个目录&#xff0c;那么默认的数据库default到底对应哪一个目录呢&#xff1f;我们可以通过hive配置文件…

使用JSF的面向服务的UI

在大型软件开发项目中&#xff0c;面向服务的体系结构非常常见&#xff0c;因为它提供了可供不同团队或部门使用的功能接口。 创建用户界面时&#xff0c;应应用相同的原理。 对于具有开票部门和客户管理部门等的大型公司&#xff0c;组织结构图可能如下所示&#xff1a; 如果计…