今天我们主要解决以下实际问题:一份黑名单数据存储在excel中,由于数据量庞大,现需要通过pandas找到某一列的重复数据,处理后再存入到excel中。
pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的,主要数据结构为两个类:
DataFrame: 可以理解为表格,类似于Excel的表格 pandas.core.frame.DataFrame
Series: 表示单列。DataFrame包含多个列,即多个Series,每个Series都有名称。pandas.core.series.Series

Pandas所支持的数据类型(dtype): 
1. float (float64)
2. int (int64,uint64)
3. bool 
4. datetime64[ns]  (2013-01-02)
5. datetime64[ns, tz] 
6. timedelta[ns] 
7. category 
8. object (字符串)
默认的数据类型是int64,float64

以下是原始的excel文件

先查看文件中Series每一列的数据类型

import pandas as pd# 更改数据类型
def change_data_type():print(excel_df.dtypes)if __name__ == '__main__':excel_df = pd.read_excel('E:\zenglingwei\\test\\5.xlsx')change_data_type()

我们发现blacklistValue默认是int类型,但我们知道身份证18位,再次存入excel中时后面几位会变成0,所以我们需要对这列进行数据类型转换。主要有两种思路,一种是读取excel时转换,另外一种是读取后转换。

一、读取时全部转换为字符串,dtype='object'或者dtype='str'

import pandas as pd# 更改数据类型
def change_data_type():print(excel_df.dtypes)if __name__ == '__main__':excel_df = pd.read_excel('E:\zenglingwei\\test\\5.xlsx',dtype='object')  # dtype='str'change_data_type()

二、读取时指定列转换为字符串,object或者str

# 更改数据类型
def change_data_type():print(excel_df.dtypes)if __name__ == '__main__':excel_df = pd.read_excel('E:\zenglingwei\\test\\5.xlsx',dtype = {'blacklistValue' : object,'priority':str})  # dtype='str'change_data_type()

三、读取后转换为字符串: astype(str),不可以使用astype(object)-->存入到excel时还是int类型。

import pandas as pd# 更改数据类型
def change_data_type():excel_df[['blacklistValue','priority']] = excel_df[['blacklistValue','priority']].astype(str)print(excel_df.dtypes)excel_df.to_excel('excel_to_python.xls',sheet_name='sheet', index=False)if __name__ == '__main__':excel_df = pd.read_excel('E:\zenglingwei\\test\\5.xlsx')  # dtype='str'change_data_type()

【Python】pandas模块中更改Series的数据类型相关推荐

  1. python pandas模块_Python3.5 Pandas模块中Series用法详解

    Python3.5 Pandas模块中Series用法实例 本文实例讲述了Python3.5 Pandas模块之Series用法.分享给大家供大家参考,具体如下: 1.Pandas模块引入与基本数据结 ...

  2. Python——pandas模块—Series数据结构

    Python--pandas模块-Series数据结构 Python--pandas模块-Series数据结构 pandas Series 创建Series 没有指定索引列时,自动创建:0~~(N-1 ...

  3. python iloc函数_如何使用python语言中pandas模块中的iloc方法

    在python语言中,pandas模块中的iloc方法,可以截取矩阵,获取部分矩阵元素.行和列.下面利用实例说明iloc方法的用法,操作如下: 工具/原料 python pycharm 截图工具 方法 ...

  4. Python Pandas模块教程

    Python Pandas模块 (Python Pandas Module) Pandas is an open source library in Python. It provides ready ...

  5. Python hashlib模块中的sha加密

    Python hashlib模块中的sha加密 一.sha简介 sha (Secure Hash Algorithm)模块与md5的作用相似,用于对信息进行加密. "Secure Hash ...

  6. python导入模块中的对象_详解Python项目开发时自定义模块中对象的导入和使用

    背景:1)任何一个Python程序文件既可以直接执行,也可以作为模块导入再使用其中的对象:2)对于大型系统开发,一般不会把所有代码放到单个文件中,而是根据功能将其分类并分散多个模块中,在编写小型项目时 ...

  7. [转载] Python pandas数据分析中常用方法

    参考链接: Python | Pandas处理文本text数据 官方教程 读取写入文件 官方IO 读取 写入 read_csv to_csv read_excel to_excel read_hdf ...

  8. Python pandas模块

    1 pandas数据读取 Pandas需要先读取表格类型的数据,然后进行分析 1.1 读取文件和基础语句: 读取csv文件数据: import pandas as pd filepatch=r&quo ...

  9. Python pandas模块输出每行中间省略号问题

    关于Python数据分析中pandas模块在输出的时候,每行的中间会有省略号出现,和行与行中间的省略号....问题,其他的站点(百度)中的大部分都是瞎写,根本就是复制黏贴以前的版本,你要想知道其他问题 ...

最新文章

  1. matlab vector用法,C++ vector 用法汇总
  2. 【419天】跃迁之路——程序员高效学习方法论探索系列(实验阶段176-2018.03.31)...
  3. 根据历史数据预测未来数据_未来销量预测——Kaggle基础方案(一):赛题背景和数据字段分析...
  4. vue .prettierrc文件常见配置, 以及配置 Prettier - Code formatter 插件 格式化
  5. 苹果ios浏览器里面数字被当做电话号码
  6. 架构设计:分布式结构下,服务部署发布
  7. 一个非常标准的Java连接Oracle数据库的示例代码
  8. dda算法画直线_深度学习算法第一讲感知机数学原理解析及实现
  9. 关于领域模型与技术架构的关系的思考
  10. Procez One 快速入门(4)
  11. Tracepro 中LED光源模型建立(英文
  12. u盘写保护,无法格式化
  13. 「精品」无损批量压缩图片工具 - Caesium Image Compressor
  14. 【centos7x86】安装源 设置基础软件仓库时出错 解决办法
  15. java设计模式之【工厂模式】
  16. APP开发多少钱多少人和哪些注意事项
  17. PyCharm运行问题:AssertionError: Torch not compiled with CUDA enabled
  18. 《众妙之门——自由网站设计师成功之道》一1.1 迈向成功的几个必要习惯
  19. Excel学习日记:L27-数据重复怎么办
  20. 痛惜!年仅43岁,又一位985高校博导因病逝世

热门文章

  1. pat乙级 1014 java_pat乙级1014 福尔摩斯的约会
  2. matlab安装无效距离过远,求助matlab的远程序
  3. 三诺+n20g+微型计算机,原来是他?揭秘三诺永恒系列开山鼻祖
  4. python3安装pymysql_python安装PyMySQL
  5. 接上一篇--最小生成树之Prim算法(根据点来实现最小生成树)
  6. java环形队列测试,JAVA数据结构之循环队列的实现
  7. java将图片转byte存入数据库_Java将byte[]转图片存储到本地的案例
  8. php查找以xx结尾的的字符串单词,Javascript中查找不以XX字符结尾的单词示例代码_javascript技巧...
  9. ROS 创建msg和srv 编写发布者和订阅者节点 编写服务端和客户端节点(python版本)
  10. STM32-时钟-时钟树-时钟初始化配置