pands常用操作

1.导入库和文件读取和文件分信息分析

import pandas as pd
import numpy as np
csvf = pd.read_csv('D:/各个站程序版本说明.csv')
csvf.info()'''
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 51 entries, 0 to 50
Data columns (total 6 columns):#   Column  Non-Null Count  Dtype
---  ------  --------------  -----0   A       51 non-null     int641   B       51 non-null     int642   C       51 non-null     int643   D       51 non-null     int644   E       51 non-null     int645   F       51 non-null     int64
dtypes: int64(6)
memory usage: 2.5 KB'''csvf.head()

 

        统计有多少行列,查看形状

       2.增加列

    label = pd.Categorical(xl['交易时间'])print(label)print(label.codes)print(xl.shape)print(xl.columns)s = pd.DataFrame({'A':label.codes})xl = xl.join(s)print(xl.shape)print(xl.columns)

(307, 18)
Index(['运单号', '交易时间', '寄件人', '寄件人手机号', '收件人', '收件人手机号', '寄件地', '到件地', '托寄物名称','产品类型', '交易类型', '主卡号', '副卡号', '支付方式', '消费总金额', '消费本金', '消费赠送金', '消费网点'],dtype='object')
(307, 19)
Index(['运单号', '交易时间', '寄件人', '寄件人手机号', '收件人', '收件人手机号', '寄件地', '到件地', '托寄物名称','产品类型', '交易类型', '主卡号', '副卡号', '支付方式', '消费总金额', '消费本金', '消费赠送金', '消费网点','A'],dtype='object')

        3.删除列

    label = pd.Categorical(xl['交易时间'])print(label)print(label.codes)print(xl.shape)print(xl.columns)s = pd.DataFrame({'A':label.codes})xl = xl.join(s)print(xl.shape)print(xl.columns)del xl['交易时间']print(xl.shape)print(xl.columns)
(307, 18)
Index(['运单号', '交易时间', '寄件人', '寄件人手机号', '收件人', '收件人手机号', '寄件地', '到件地', '托寄物名称','产品类型', '交易类型', '主卡号', '副卡号', '支付方式', '消费总金额', '消费本金', '消费赠送金', '消费网点'],dtype='object')
(307, 19)
Index(['运单号', '交易时间', '寄件人', '寄件人手机号', '收件人', '收件人手机号', '寄件地', '到件地', '托寄物名称','产品类型', '交易类型', '主卡号', '副卡号', '支付方式', '消费总金额', '消费本金', '消费赠送金', '消费网点','A'],dtype='object')
(307, 18)
Index(['运单号', '寄件人', '寄件人手机号', '收件人', '收件人手机号', '寄件地', '到件地', '托寄物名称', '产品类型','交易类型', '主卡号', '副卡号', '支付方式', '消费总金额', '消费本金', '消费赠送金', '消费网点', 'A'],dtype='object')Process finished with exit code 0

2.文件行列访问

        1.查看列信息

csvf.columns
'''
Index(['A', 'B', 'C', 'D', 'E', 'F'], dtype='object')
'''

         2.列访问

                (1)访问某一列       

csvf['A']
'''
0      2
1      3
2      4
3      5
4      6
5      7
6      8
7      9
......
Name: A, dtype: int64
'''

                 (2)访问几行

                

                (3)访问指定行列 iloc[行:列] 

                (4) 转换为ndarray数组使用 values

                        

                         

3.文件分析

       1.数据分组 groupby,根据列项目相同的分为一组(类似于wps的筛选功能,列条目一样的就分为一组,可以使用列表设置选择几个列)。

print(list(xl.groupby('交易时间')))
#print(list(xl.groupby(['收件人','消费赠送金']))) #根据'收件人'和'消费赠送金'分组

       分组后数据访问:

    for x,y in xl.groupby(['收件人','消费赠送金']):print(type(x),x)print(type(y),y)

[7 rows x 18 columns]
<class 'tuple'> ('马*', 1.5)
<class 'pandas.core.frame.DataFrame'>                  运单号                 交易时间  寄件人  ...  消费本金 消费赠送金     消费网点
1    SF1439857656942  2023-06-30 08:58:06  程*纪  ...  13.5   1.5  总部基地业务部
14   SF1409118353807  2023-06-25 10:42:45  邓*丝  ...  13.5   1.5  总部基地业务部
91   SF1439946551252  2023-06-09 08:50:48  李*平  ...  13.5   1.5  总部基地业务部
145  SF1439654255452  2023-06-06 18:46:12  郭*超  ...  13.5   1.5  总部基地业务部
156  SF1500739309308  2023-06-06 08:35:51  吴*宁  ...  13.5   1.5  总部基地业务部[5 rows x 18 columns]
<class 'tuple'> ('马*', 2.3)
<class 'pandas.core.frame.DataFrame'>                 运单号                 交易时间  寄件人  ...  消费本金 消费赠送金     消费网点
29  SF1445516848370  2023-06-15 17:40:43  王*玉  ...  20.7   2.3  总部基地业务部[1 rows x 18 columns]
<class 'tuple'> ('魏*', 0.0)
<class 'pandas.core.frame.DataFrame'>                  运单号                 交易时间  寄件人  ...  消费本金 消费赠送金     消费网点
219  SF1401907161910  2023-06-04 09:55:04  徐*彤  ...  18.0   0.0  总部基地业务部
226  SF1144693557714  2023-06-03 08:48:05  吴*磊  ...  13.0   0.0  总部基地业务部
249  SF1455224508209  2023-06-02 19:12:41  马*民  ...  13.0   0.0  总部基地业务部
255  SF1455384435201  2023-06-02 17:13:43   廖*  ...  14.0   0.0  总部基地业务部
281  SF1439613136618  2023-06-02 08:14:34   周*  ...  13.0   0.0  总部基地业务部
296  SF1417967024361  2023-06-02 08:11:55  韩*云  ...  13.0   0.0  总部基地业务部[6 rows x 18 columns]
<class 'tuple'> ('魏*', 1.3)
<class 'pandas.core.frame.DataFrame'>                  运单号                 交易时间  寄件人  ...  消费本金 消费赠送金     消费网点
81   SF1450444235259  2023-06-09 08:54:56   王*  ...  11.7   1.3  总部基地业务部
92   SF1448510238715  2023-06-09 08:50:48   王*  ...  11.7   1.3  总部基地业务部
107  SF1442505158813  2023-06-08 11:06:36   逯*  ...  11.7   1.3  总部基地业务部
108  SF1439924609383  2023-06-08 11:06:36  杨*兰  ...  11.7   1.3  总部基地业务部
113  SF1454134351248  2023-06-08 08:22:34   赵*  ...  11.7   1.3  总部基地业务部
128  SF1439652204704  2023-06-07 08:21:44  徐*涛  ...  11.7   1.3  总部基地业务部
167  SF1442573948215  2023-06-06 08:34:23   裴*  ...  11.7   1.3  总部基地业务部
178  SF1429069960969  2023-06-06 08:34:23  韩*宇  ...  11.7   1.3  总部基地业务部[8 rows x 18 columns]
<class 'tuple'> ('魏*', 1.5)
<class 'pandas.core.frame.DataFrame'>                  运单号                 交易时间  寄件人  ...  消费本金 消费赠送金     消费网点
171  SF1429046446869  2023-06-06 08:34:23  郭*丹  ...  13.5   1.5  总部基地业务部
172  SF1150185008864  2023-06-06 08:34:23  王*宁  ...  13.5   1.5  总部基地业务部[2 rows x 18 columns]

        分组后简单统计:

print( xl.groupby(['收件人', '消费赠送金']).size())
收件人  消费赠送金
刘*   1.1      1
孔*新  0.0      1
孔*燕  0.0      31.3      1
孙*英  1.3      1..
马*   1.5      52.3      1
魏*   0.0      61.3      81.5      2
Length: 100, dtype: int64Process finished with exit code 0

        2.列对比筛选

print(xl[xl['消费赠送金']>1.4])

         3.返回列的唯一编码

print(xl['消费赠送金'].unique())

 

4.文件数字化

         1.把列文本的转为数字编码

label = pd.Categorical(xl['交易时间'])
print(label)
print(label.codes)
Categories (122, object): ['2023-06-01 09:11:06', '2023-06-01 09:11:46', '2023-06-01 09:12:10','2023-06-01 09:12:52', ..., '2023-06-30 08:57:39', '2023-06-30 08:57:52','2023-06-30 08:58:06', '2023-06-30 08:58:36']
[121 120 119 118 117 116 115 114 113 112 111 110 109 108 107 106 105 104103 102 101 100  99  98  97  96  96  95  94  93  92  92  92  92  91  9191  91  91  91  90  89  88  87  87  87  86  85  84  84  83  83  82  8180  79  79  79  79  79  79  79  79  79  79  79  79  79  78  77  76  7575  75  75  75  75  75  75  75  74  73  72  72  72  72  71  71  71  7171  71  71  71  71  71  71  71  71  71  70  70  70  69  68  67  67  6666  65  64  63  63  62  62  62  62  62  62  62  62  62  62  62  62  6262  62  61  61  61  61  61  61  61  61  61  61  61  61  61  61  61  6161  60  60  60  59  58  57  56  55  54  53  53  52  51  50  50  49  4848  48  48  48  48  48  48  48  48  48  48  48  48  48  48  48  48  4848  48  47  46  45  44  43  42  42  42  42  41  40  40  39  38  38  3736  35  34  33  33  33  33  33  33  33  33  33  33  33  33  33  32  3130  29  28  27  26  25  24  23  23  22  22  22  22  22  22  22  22  2222  22  22  22  22  22  22  22  22  22  22  22  22  21  20  19  18  1716  16  15  15  15  15  15  15  14  14  13  13  12  11  11  10  10  1010  10  10  10  10  10  10  10  10  10  10  10   9   9   9   9   9   99   9   9   9   9   9   9   9   9   9   8   7   6   5   4   3   2   10]

        2.独热编码(统计这个列有多少属性(唯一值),然后把该列转换为独热编码,相当于根据唯一值设置为列,对应的编码的列,使用某个唯一值,该唯一值置位1,其他置位0)。

    t = pd.get_dummies(xl['产品类型'])print(xl['产品类型'].unique())print(type(t))print(t)
['顺丰标快' nan '陆运包裹' '同城半日达' '顺丰即日' '顺丰特快' '便利箱产品']
<class 'pandas.core.frame.DataFrame'>便利箱产品  同城半日达  陆运包裹  顺丰即日  顺丰标快  顺丰特快
0        0      0     0     0     1     0
1        0      0     0     0     1     0
2        0      0     0     0     1     0
3        0      0     0     0     1     0
4        0      0     0     0     1     0
..     ...    ...   ...   ...   ...   ...
302      0      0     0     0     1     0
303      0      0     0     0     1     0
304      0      0     1     0     0     0
305      0      0     1     0     0     0
306      0      0     0     0     1     0[307 rows x 6 columns]

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

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

相关文章

java面试题整理

2023.2.14&#xff08;第二天&#xff09; 数组是不是对象&#xff1f; 在Java中&#xff0c;数组是对象。数组是一种引用类型&#xff0c;它可以存储固定大小的相同类型的元素序列。在Java中&#xff0c;数组是通过new关键字创建的&#xff0c;它们在内存中被分配为对象&…

Java 中 Hashtable和ConcurrentHashMap的区别

Hashtable和ConcurrentHashMap的区别 Hashtable 和 ConcurrentHashMap 都是 Java 中的集合框架中的 Map 接口实现类&#xff0c;但它们之间有很大的不同&#xff0c;特别是在多线程环境中。下面是它们之间的一些主要区别&#xff1a; 线程安全性&#xff1a; Hashtable 是线程…

<网络安全>《30 网络信息安全基础(1)常用术语整理》

1 肉鸡 所谓“肉鸡”是一种很形象的比喻&#xff0c;比喻那些可以随意被我们控制的电脑&#xff0c;对方可以是WINDOWS系统&#xff0c;也可以是UNIX/LINUX系统&#xff0c;可以是普通的个人电脑&#xff0c;也可以是大型的服务器&#xff0c;我们可以象操作自己的电脑那样来操…

网络世界的基石:深入探索OSI 7层模型的奥秘

引言 在当今互联网和计算机网络的复杂体系中&#xff0c;OSI&#xff08;开放系统互连&#xff09;参考模型提供了一个理解和设计网络通信协议的框架。自1984年由国际标准化组织&#xff08;ISO&#xff09;提出以来&#xff0c;OSI 7层模型已成为网络通信中最基本的概念之一。…

re:从0开始的CSS之旅 15. 浮动

1. 浮动 浮动&#xff1a;使元素浮起来&#xff0c;脱离文档流&#xff0c;从而使盒子能够灵活的移动。 浮动的属性&#xff1a; float 属性设置元素的浮动 可选值&#xff1a; none 元素不浮动&#xff0c;默认在文档流中排列&#xff08;默认值&#xff09; left 元素向左移…

「数据结构」MapSet

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;Java数据结构 &#x1f387;欢迎点赞收藏加关注哦&#xff01; Map&Set &#x1f349;概念&#x1f349;模型&#x1f349;Map&#x1f34c;TreeMap和HashMap的区别&#x1f34c;Map常用方…

2048游戏C++板来啦!

个人主页&#xff1a;PingdiGuo_guo 收录专栏&#xff1a;C干货专栏 大家好呀&#xff0c;我是PingdiGuo_guo&#xff0c;今天我们来学习如何用C编写一个2048小游戏。 文章目录 1.2048的规则 2.步骤实现 2.1: 初始化游戏界面 2.1.1知识点 2.1.2: 创建游戏界面 2.2: 随机…

嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM驱动编程第二天-ARM按键1*3矩阵键盘编程 (物联技术666)

链接&#xff1a;https://pan.baidu.com/s/1E4x2TX_9SYhxM9sWfnehMg?pwd1688 提取码&#xff1a;1688 1、键盘1*3的中断程序 //************************************************ #include "2440addr.h" #include "2440lib.h" #include &…

Days 31 ElfBoard 自启脚本中打开看门狗

1.在开机自启脚本中打开看门狗 rootELF1:~# vi /etc/rc.local 2.在自启脚本中添加上之后&#xff0c;然后在咱们的QT界面中找到看门狗应用&#xff0c; 发现显示打开看门狗失败&#xff1a; 3.修改看门狗源码&#xff0c;设置了超时时间后&#xff0c;关闭/dev/dev/watchdog节…

【Tomcat】:One or more listeners failed to start.报错解决方案

报错信息:One or more listeners failed to start. Full details will be found in the appropriate container log file. 具体就是web.xml此配置报错: 服务器启动错误Tomcat:One or more listeners failed to start.报错解决方案 IDEA:在使用IDEA运行SSM项目的时候 , Tomcat运…

.NET Core性能优化技巧

.NET Core作为一个跨平台的开源框架&#xff0c;以其高效、灵活和可扩展的特性受到了广大开发者的青睐。但在实际开发中&#xff0c;如何确保应用程序的性能始终是一个关键的问题。本文将介绍十大.NET Core性能优化技巧&#xff0c;帮助开发者提升应用程序的性能。 1. 使用异步…

error MSB8008: 指定的平台工具集(v143)未安装或无效。请确保选择受支持的 PlatformToolset 值解决办法

右击解决方案&#xff0c;选择属性 将工具集为143的修改为其他&#xff0c;如图 重新编译即可运行

网络原理(3)--以太网协议,DNS

&#x1f495;"Echo"&#x1f495; 作者&#xff1a;Mylvzi 文章主要内容&#xff1a;网络原理(3)–以太网协议,DNS 在网络原理(2)中介绍了网络层中的一个重要的协议–ip协议,网络层关注的通信时的起点和终点,而数据链路层更加"底层"一些,关注的是传输过程…

关于TypeError:无法读取null属性(读取‘isCE‘) -自定义组件库

关于TypeError:无法读取null属性(读取’isCE’) -自定义组件库 大家先看一下这个文章 https://cloud.tencent.com/developer/ask/sof/106913760 这个文章里面给了vite解决方案 这里我给出一个webpack解决方案 首先我建议你的组件库和你的项目进行vue版本锁定 第二补在你的vue.c…

假期作业 11

整理chmod、chgrp、chown指令的应用成文档 chmod 文件分类: bcd-lsp d 目录 - 普通文件 b 块设备驱动文件 磁盘 c 字符设备驱动文件 键盘 鼠标 l link 链接文件 软连接 硬连接 网络编程 s socket 套接字文件 网络编程 p pipe 管道文件 权限内容 r read w write - 无…

【Effective Objective - C 2.0】——读书笔记(四)

文章目录 二十三、通过委托与数据源协议进行对象间通信二十四、将类的实现代码分散到便于管理的数个分类之中二十五、总是为第三方的分类名称加前缀二十六、切勿在分类里面声明属性二十七、使用“class-continuation分类”隐藏实现细节二十八、通过协议提供匿名对象 二十三、通…

springboot187社区养老服务平台的设计与实现

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计&#xff0c;课程设计参考与学习用途。仅供学习参考&#xff0c; 不得用于商业或者非法用途&#xff0c;否则&#xff0c;一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

剑指大数据-企业级数据仓库项目实战

第1章 大数据与数据仓库概论 大数据生态圈分为7层&#xff0c;这7层可以概括为数据采集层、数据计算层、数据应用层3层结构。 第4章 用户行为数据采集模块 4.1日志生成 4.1.1数据埋点 用户行为日志的内容&#xff0c;主要包括用户的各项行为信息&#xff0c;以及行为所…

MySQL 基础知识(六)之数据查询(一)

目录 1 基本查询 1.1 查询相关列 (select * / 列名) 1.2 别名 (as) 1.3 去重 (distinct) 1.4 对列中的数据进行运算 (、-、*、/) 2 条件查询 (where) 2.1 等值查询 () 2.2 非等值查询 (>、<、>、<、!、><) 2.3 逻辑判断 (and、or、not) 2.4 区间判…

源码推荐:hello-algo @ github

github https://github.com/krahets/hello-algo 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。全书采用动画图解&#xff0c;结构化地讲解数据结构与算法知识&#xff0c;内容清晰易懂&#xff0c;学习曲线平滑。算法源代码皆可一键运行&#xff0c;支…