pandas 初识(五)
1. 如何实现把一个属性(列)拆分成多列,产生pivot,形成向量信息,计算相关性?
例:
class_ timestamp count
0 10 2019-01-20 13:23:00 1
1 10 2019-01-20 13:24:00 2
2 10 2019-01-20 13:25:00 2
3 10 2019-01-20 13:26:00 1
4 10 2019-01-20 13:27:00 2
转为:
class_ 1 2 3 4 10
timestamp
2019-01-20 13:23:01 1.0 NaN NaN NaN NaN
2019-01-20 13:24:02 NaN NaN 2.0 NaN NaN
2019-01-20 13:25:03 NaN 2.0 NaN NaN NaN
2019-01-20 13:26:02 NaN NaN NaN 1.0 NaN
2019-01-20 13:27:05 NaN NaN NaN NaN 2.0
解决:
import pandas as pd
from pandas import Timestamp info = {'class_': {0: 1, 1: 2, 2: 3, 3: 4, 4: 10},
'timestamp': {0: Timestamp('2019-01-20 13:23:00'),
1: Timestamp('2019-01-20 13:24:00'),
2: Timestamp('2019-01-20 13:25:00'),
3: Timestamp('2019-01-20 13:26:00'),
4: Timestamp('2019-01-20 13:27:00')},
'count': {0: 1, 1: 2, 2: 2, 3: 1, 4: 2}}
df = pd.DataFrame(info)
# df.pivot(index='timestamp', columns="class_", values="count").fillna(0)
df.pivot(index='timestamp', columns="class_", values="count")
2. 如何实现把一个属性的多列(属性唯一)合并成一列
例:
class_ 1 2 3 4 10
timestamp
2019-01-20 13:23:01 1.0 NaN NaN NaN NaN
2019-01-20 13:24:02 NaN NaN 2.0 NaN NaN
2019-01-20 13:25:03 NaN 2.0 NaN NaN NaN
2019-01-20 13:26:02 NaN NaN NaN 1.0 NaN
2019-01-20 13:27:05 NaN NaN NaN NaN 2.0
转为:
class_ timestamp count
0 10 2019-01-20 13:23:00 1
1 10 2019-01-20 13:24:00 2
2 10 2019-01-20 13:25:00 2
3 10 2019-01-20 13:26:00 1
4 10 2019-01-20 13:27:00 2
解决:
import pandas as pd
from pandas import Timestampinfo = {'class_': {0: 1, 1: 2, 2: 3, 3: 4, 4: 10},
'timestamp': {0: Timestamp('2019-01-20 13:23:00'),
1: Timestamp('2019-01-20 13:24:00'),
2: Timestamp('2019-01-20 13:25:00'),
3: Timestamp('2019-01-20 13:26:00'),
4: Timestamp('2019-01-20 13:27:00')},
'count': {0: 1, 1: 2, 2: 2, 3: 1, 4: 2}}
df = pd.DataFrame(info)
# df1 = _df.pivot(index='timestamp', columns="class_", values="count").dropna()
df1 = _df.pivot(index='timestamp', columns="class_", values="count")
df1 = _df.stack().reset_index()
df1.columns = ["class_", "count"]
pandas 初识(五)的更多相关文章
- pandas初识
pandas初识 1.生成DataFrame型的数据 import pandas as pd import numpy as np dates = pd.date_range('20130101',p ...
- pandas 初识(四)
Pandas 和 sqlalchemy 配合实现分页查询 Mysql 并获取总条数 @api.route('/show', methods=["POST"]) def api_sh ...
- pandas 初识(三)
Python Pandas 空值 pandas 判断指定列是否(全部)为NaN(空值) import pandas as pd import numpy as np df = pd.DataFrame ...
- pandas 初识(一)
基本内容 Series: Series 是有一组数据(numpy的数据类型 numpy.ndarray)以及一组数据标签(即索引)组成,可以看成一个一个定长的有序字典(索引值到数据值的一个映射) ob ...
- pandas 初识(二)
基本统计 pivot_table(数据透视表 ): 使用appfunc, 按不同index分类统计各特征values的值 df.pivot_table(index="Pclass" ...
- pandas(五)处理缺失数据和层次化索引
pandas用浮点值Nan表示浮点和非浮点数组中的缺失数据.它只是一个便于被检测的标记而已. >>> string_data = Series(['aardvark','artich ...
- pandas求五日线并画图
import pandas as pd import numpy as np import matplotlib.pyplot as plt stock_data = pd.read_csv('000 ...
- pandas 初识(六)-可视化
Pandas 在一张图中绘制多条线 import pandas as pd import numpy as npimport matplotlib.pyplot as plt df = pd.Data ...
- 利用Python进行数据分析-Pandas(第五部分-数据规整:聚合、合并和重塑)
在许多应用中,数据可能分散在许多文件或数据库中,存储的形式也不利于分析.本部分关注可以聚合.合并.重塑数据的方法. 1.层次化索引 层次化索引(hierarchical indexing)是panda ...
随机推荐
- C#程序编写高质量代码改善的157个建议[正确操作字符串、使用默认转型方法、却别对待强制转换与as和is]
前言 本文主要来学习记录前三个建议. 建议1.正确操作字符串 建议2.使用默认转型方法 建议3.区别对待强制转换与as和is 其中有很多需要理解的东西,有些地方可能理解的不太到位,还望指正. 建议1. ...
- 基于webpack实现多html页面开发框架六 提取公共代码
一.解决什么问题 1.如果a.js和b.js都引用了common.js,那在打包的时候common.js会被重复打入到a.js和b.js,造成重复打包 2.单独打包common.js对性能有帮助,浏览 ...
- 【原创】003 | 搭上基于SpringBoot事务思想实战专车
前言 如果这是你第二次看到师长,说明你在觊觎我的美色! 点赞+关注再看,养成习惯 没别的意思,就是需要你的窥屏^_^ 专车介绍 该趟专车是开往基于Spring Boot事务思想实战的专车,在上一篇 搭 ...
- [转载]C++中四种强制类型转换方式
C++中四种强制类型转换方式 原文地址:http://www.cnblogs.com/home123/p/6763967.html 类型转换有c风格的,当然还有c++风格的.c风格的转换的格式很简单( ...
- wait notify notifyAll await signal signalAll 的理解及示例
从常见的一道面试题开始,题目的描述是这样子的: 有三个线程分别打印A.B.C,请用多线程编程实现,在屏幕上循环打印10次ABCABC- 网上大都教了你怎么去实现,其实我也写过一篇 https://bl ...
- Docker系列之常用命令操作手册
目录 1.安装虚拟机 2.安装Docker 3.Docker镜像操作 4.Docker容器操作 Docker系列之常用命令操作手册 继上一篇博客Docker系列之原理简单介绍之后,本博客对常用的Doc ...
- C#语言和SQL Server数据库技术_前四章错题
1.在C#中,如果让某个方法只能被它所在的程序集内的其他方法访问,可使用(C)修饰这个方法. (选择一项) A:private B:protected C:internal D:以上都不对 2.下 ...
- [TimLinux] Python 自定义描述符
1. 含义 在类中,含有属性(该属性需要存在类对象到__dict__属性中,不能为存在示例对象的__dict__属性中),对属性对操作(访问,设置值,删除)可以自定义行为,这样对自定义行为成为自定义属 ...
- Python绘制KS曲线
更多大数据分析.建模等内容请关注公众号<bigdatamodeling> python实现KS曲线,相关使用方法请参考上篇博客-R语言实现KS曲线 代码如下: ############## ...
- Everspin非易失性MRAM切换技术
切换MRAM技术 切换MRAM使用1个晶体管,1个MTJ单元来提供简单的高密度存储器.Everspin使用获得专利的Toggle电池设计,可提供高可靠性.数据在温度下20年始终是非易失性的. 在读取期 ...