【数据分析可视化】通过apply进行数据预处理
import numpy as np
import pandas as pd
from pandas import Series, DataFrame
# 读取apply_demo.csv数据
link_csv = '/Users/bennyrhys/Desktop/数据分析可视化-数据集/homework/apply_demo.csv'
df = pd.read_csv(link_csv).head()
df
time | data | |
---|---|---|
0 | 1473411962 | Symbol: APPL Seqno: 0 Price: 1623 |
1 | 1473411962 | Symbol: APPL Seqno: 0 Price: 1623 |
2 | 1473411963 | Symbol: APPL Seqno: 0 Price: 1623 |
3 | 1473411963 | Symbol: APPL Seqno: 0 Price: 1623 |
4 | 1473411963 | Symbol: APPL Seqno: 1 Price: 1649 |
df.size
10
# 新加一列Series
s1 = Series(['a']*10)
s1
0 a
1 a
2 a
3 a
4 a
5 a
6 a
7 a
8 a
9 a
dtype: object
df['A'] = s1
df.head()
time | data | A | |
---|---|---|---|
0 | 1473411962 | Symbol: APPL Seqno: 0 Price: 1623 | a |
1 | 1473411962 | Symbol: APPL Seqno: 0 Price: 1623 | a |
2 | 1473411963 | Symbol: APPL Seqno: 0 Price: 1623 | a |
3 | 1473411963 | Symbol: APPL Seqno: 0 Price: 1623 | a |
4 | 1473411963 | Symbol: APPL Seqno: 1 Price: 1649 | a |
# 将A列小写全变为大写(函数.apply(str.upper))
df['A'] = df['A'].apply(str.upper)
df
time | data | A | |
---|---|---|---|
0 | 1473411962 | Symbol: APPL Seqno: 0 Price: 1623 | A |
1 | 1473411962 | Symbol: APPL Seqno: 0 Price: 1623 | A |
2 | 1473411963 | Symbol: APPL Seqno: 0 Price: 1623 | A |
3 | 1473411963 | Symbol: APPL Seqno: 0 Price: 1623 | A |
4 | 1473411963 | Symbol: APPL Seqno: 1 Price: 1649 | A |
# 切分去除data数据
df['data'][0]
' Symbol: APPL Seqno: 0 Price: 1623'
# 去除头尾strip,且空格分割split
l1 = df['data'][0].strip().split(' ')
l1
['Symbol:', 'APPL', 'Seqno:', '0', 'Price:', '1623']
# 想要的是字典值
l1[1],l1[3],l1[5]
('APPL', '0', '1623')
# 写分割返回函数
def foo(line):items = line.strip().split(' ')return Series([items[1],items[3],items[5]])
# 分割完生成新的数框
df_tmp = df['data'].apply(foo)
df_tmp
0 | 1 | 2 | |
---|---|---|---|
0 | APPL | 0 | 1623 |
1 | APPL | 0 | 1623 |
2 | APPL | 0 | 1623 |
3 | APPL | 0 | 1623 |
4 | APPL | 1 | 1649 |
# 新的数框 重命名
df_tmp = df_tmp.rename(columns={0:'Symbol',1:'Seqno',2:'Price'})
df_tmp
Symbol | Seqno | Price | |
---|---|---|---|
0 | APPL | 0 | 1623 |
1 | APPL | 0 | 1623 |
2 | APPL | 0 | 1623 |
3 | APPL | 0 | 1623 |
4 | APPL | 1 | 1649 |
df
time | data | A | |
---|---|---|---|
0 | 1473411962 | Symbol: APPL Seqno: 0 Price: 1623 | A |
1 | 1473411962 | Symbol: APPL Seqno: 0 Price: 1623 | A |
2 | 1473411963 | Symbol: APPL Seqno: 0 Price: 1623 | A |
3 | 1473411963 | Symbol: APPL Seqno: 0 Price: 1623 | A |
4 | 1473411963 | Symbol: APPL Seqno: 1 Price: 1649 | A |
# 新旧两个数框 结合
df_new = df.combine_first(df_tmp)
df_new
A | Price | Seqno | Symbol | data | time | |
---|---|---|---|---|---|---|
0 | A | 1623.0 | 0.0 | APPL | Symbol: APPL Seqno: 0 Price: 1623 | 1473411962 |
1 | A | 1623.0 | 0.0 | APPL | Symbol: APPL Seqno: 0 Price: 1623 | 1473411962 |
2 | A | 1623.0 | 0.0 | APPL | Symbol: APPL Seqno: 0 Price: 1623 | 1473411963 |
3 | A | 1623.0 | 0.0 | APPL | Symbol: APPL Seqno: 0 Price: 1623 | 1473411963 |
4 | A | 1649.0 | 1.0 | APPL | Symbol: APPL Seqno: 1 Price: 1649 | 1473411963 |
# 去掉多余已经处理的data
del df_new['data']
del df_new['A']
df_new
Price | Seqno | Symbol | time | |
---|---|---|---|---|
0 | 1623.0 | 0.0 | APPL | 1473411962 |
1 | 1623.0 | 0.0 | APPL | 1473411962 |
2 | 1623.0 | 0.0 | APPL | 1473411963 |
3 | 1623.0 | 0.0 | APPL | 1473411963 |
4 | 1649.0 | 1.0 | APPL | 1473411963 |
# 转存到外部继续用
df_new.to_csv('/Users/bennyrhys/Desktop/数据分析可视化-数据集/homework/demo_duplicate.csv')
!ls /Users/bennyrhys/Desktop/数据分析可视化-数据集/homework
AMZN.csv apply_demo.csv iris.csv top5.csv
BABA.csv city_weather.csv movie_metadata.csv train.csv
Pokemon.csv demo_duplicate.csv sales-funnel.xlsx usa_flights.csv
【数据分析可视化】通过apply进行数据预处理相关推荐
- Python网易云音乐爬虫大数据分析可视化系统——大屏数据可视化开发之路
介绍 现在比较流行的大数据数据可视化都是大屏,有钱的人会使用阿里云全家桶的DataV或者商业化的大屏解决方案,但是在国内还是小公司比较多,本人50年大数据开发经验,精通数据可视化,曾经处理过百万亿级别 ...
- 数据分析与挖掘-python常用数据预处理函数
数据预处理往往在数据分析和数据挖掘领域占到了很大的比重,甚至在机器学习这些海量数据处理的场合,数据预处理也是最核心的工作.介绍几个预处理阶段常用的库函数. 1.interpolate 插值函数,Sci ...
- 大数据分析必须要会的数据预处理操作(二)!!!
数学建模美赛大数据题必须要会的数据预处理操作(二)!!! 文章目录 数学建模美赛大数据题必须要会的数据预处理操作(二)!!! 创建DataFrame 数据显示限制 Series操作 创建Series ...
- 大数据分析必须要会的数据预处理操作(一)!!!
数学建模美赛大数据题必须要会的数据预处理操作(一)!!! 文章目录 数学建模美赛大数据题必须要会的数据预处理操作(一)!!! pandas基础函数 读取并查看 DataFrame结构 info() 返 ...
- python 保留顺序去重_Python数据分析入门教程(二):数据预处理
作者 | CDA数据分析师 从菜市场买来的菜,总有一些不太好的,所以把菜买回来以后要先做一遍预处理,把那些不太好的部分扔掉.现实中大部分的数据都类似于菜市场的菜品,拿到以后都要先做一次预处理. 常见的 ...
- Kaggle经典数据分析项目:泰坦尼克号生存预测!1. 数据概述与可视化2. 数据预处理3. 模型训练4. 模型优化(调参)
↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习 ,不错过 Datawhale干货 作者:陈锴,中山大学,Datawhale成员 最近有很多读者留言,希望 ...
- python数据分析培训内容可以_Python数据分析师
阶段一 学完后能达到什么水平? 数据分析师认知篇 说 明:0基础入学,5大进阶之路,8大课程阶段,35+课程,1000+学时, 18大行业经典案例,两大商业项目实战!人工智能是你的终极目标! 课程时长 ...
- python 归一化_一文学会用python进行数据预处理
怎样用Python进行数据转换和归一化 1.概述 实际的数据库极易受到噪声.缺失值和不一致数据的侵扰,因为数据库太大,并且多半来自多个异种数据源,低质量的数据将会导致低质量的数据分析结果,大量的数 ...
- 基于Python的海量豆瓣电影、数据获取、数据预处理、数据分析、可视化、大屏设计项目(含数据库)
目录 项目介绍 研究背景 国内外研究现状分析 研究目的 研究意义 研究总体设计 网络爬虫介绍 豆瓣电影数据的采集 数据预处理 大数据分析及可视化 豆瓣影评结构化分析 大屏可视化 文本可视化 总结 每文 ...
最新文章
- Pytorch 笔记——tensor
- 一些WPF中的滤镜特效——Effect Library
- 一个课程,11个项目!爬虫初体验,快来!
- 为什么对gRPC做负载均衡会很棘手?
- js与flash结合使用
- java spark on hive_hive-on-spark 安装 以及 scala 实例
- [Ext JS 4] 实战之 带week(星期)的日期选择控件(二)
- spring mvc和swagger整合
- Spring velocity 中文乱码 解决方案
- 老大让我整理下公司内部mysql使用规范,分享给大家
- dubbo 自定义filter
- 计算机显示器性能指标的是,简述显示器的主要性能指标
- 用动画做出一个正方体并且3d旋转,详解
- .woff2/svg/woff文件报404错误
- 计算机网络——CSMA协议
- CSS浮动+背景图片+边框+文字排版+段落设置
- 阿里云如何绑定域名(阿里云域名如何绑定ip)
- 一张图读懂极大极小搜索和α-β剪枝
- MATLAB—经纬度坐标转换为平面坐标
- 北大ACM线上比赛有感
热门文章
- nacos+gateway服务发现lb路由报503 Service Unavailable
- Java开发实例大全(PDF):603个典型事例及源码分析和24个应用方向
- 飓风来去无影踪?NASA 发射 8 颗微型卫星监控导航
- 千瓜深度解读:2020小红书双十一全行业“种草”、“拔草”投放攻略
- 机器数的定点表示与浮点表示
- 计算字符串中某段字符出现次数
- Filter(过滤器)的使用
- 【推免攻略】四.2021年北交计算机学院夏令营、预推免保研经验
- 众美集团携手行业伙伴 聚焦城镇创新与城市更新
- Java实现家庭收支记账软件及编写过程中的注意事项