pandas操作,按序号取列,按条件筛选,df格式转换等
这几天遇到比较多的dataframe操作,频繁使用,在此整理记录下,方便查找.
1.num为列的数字序号,name=df.columns[num],返回的是column的字符串名字,df[name]=df[df.columns[num]]=df['xxx']
2.关于panda中dataframe的与&运算,详情见我的博客,链接:https://www.cnblogs.com/Rvin/p/9504341.html
df_am = df[ np.array(df['MDTime']>=93000000) & np.array(df['MDTime']<113000000) ]
3.to_numeric适用于series,对字符串进行数字格式化, errors='coerce',忽略不能转化的格式,例如
格式化之前为S[2]='123',格式化结果为S[2]=123
for i in range(df.shape[1]):
df[df.columns[i]] = pd.to_numeric(df[df.columns[i]], errors='coerce')
4.drop方法及dropna方法
df.drop([0], inplace=True) # 删除列
df.drop(df.columns[0], axis=1, inplace=True) # 删除列
df.dropna(how='all',inplace=True, thresh=None) # 这个是dropna的用法,how可选
any-有一个na就符合条件,
all--全部为na才符合条件,
thresh参数(和how同级),thresh=5,大于5个符合条件
inplace=True,替换原来的,不需要返回值了
5.isin方法
df[~df.isin([np.nan, np.inf, -np.inf]).any(1)]
isin([np.nan, np.inf, -np.inf])返回整个df的每个元素(元素是np.nan, np.inf, -np.inf,则返回True)True or False
~取反,因为我需要的是留住那些不是np.nan, np.inf, -np.inf的值,df[True]的元素还是返回原来的值,False的返回为nan,然后用fillna填充即可
6.json,想要json.loads,字符串的必须是"双引号,单引号无法加载
str=re.sub('\'', '\"', str)
7.df的列改名,这样可以改对应的多个,index相同
df.rename(columns={'时间':'MDTime','成交量':'PreVolume'})
这样是从第一列重新命名,index相同
df.columns = [list('abcd')]
8.转化df格式的问题
我的stackoverflow的问题:https://stackoverflow.com/questions/52033359/transform-a-large-dataframe-takes-too-long/52033393?noredirect=1#comment91017865_52033393
df = pd.pivot(df.index, df['stock_code'], df['price'])
pivot,第一个参数为新df的index,第二个为新的columns,第三个为values
pandas操作,按序号取列,按条件筛选,df格式转换等的更多相关文章
- Pandas之csv文件对列行的相关操作
1.Pandas对数据某一列删除 1.删除列 import pandas as pd df = pd.read_csv(file) #axis=1就是删除列 df.drop(['列名1','列名2'] ...
- Pandas 操作
一.Series的创建: pd.Series([ 数据 ]) In [17]: import pandas as pd In [18]: import numpy as np In [19]: s = ...
- 整理pandas操作
本文原创,转载请标识出处: http://www.cnblogs.com/xiaoxuebiye/p/7223774.html 导入数据: pd.read_csv(filename):从CSV文件导入 ...
- Python openpyxl、pandas操作Excel方法简介与具体实例
本篇重点讲解windows系统下 Python3.5中第三方excel操作库-openpyxl: 其实Python第三方库有很多可以操作Excel,如:xlrd,xlwt,xlwings甚至注明的数据 ...
- pandas操作速查表
准备工作 import numpy as np import pandas as pd 倒入文件或创建一个数据表 df = pd.DataFrame(pd.read_csv('name.csv',he ...
- pandas操作,感觉不错,复制过来的
整理pandas操作 本文原创,转载请标识出处: http://www.cnblogs.com/xiaoxuebiye/p/7223774.html 导入数据: pd.read_csv(filenam ...
- python数据分析三剑客之: pandas操作
pandas的操作 pandas的拼接操作 # pandas的拼接操作 级联 pd.concat , pd.append 合并 pd.merge , pd.join 一丶pd.concat()级联 # ...
- Python数据分析之Pandas操作大全
从头到尾都是手码的,文中的所有示例也都是在Pycharm中运行过的,自己整理笔记的最大好处在于可以按照自己的思路来构建矿建,等到将来在需要的时候能够以最快的速度看懂并应用=_= 注:为方便表述,本章设 ...
- 数据分析之Pandas操作
Pandas pandas需要导入 import pandas as pd from pandas import Series,DataFrame import numpy as np 1 Serie ...
随机推荐
- 正确移除List中对象
list是一个ArrayList的对象,哪个选项的代码填到//todo delete处.能够在Iterator遍历的过程中正确并安全的删除一个list中保存的对象?() Iterator it = l ...
- 【打CF,学算法——二星级】CF 520B Two Buttons
[CF简单介绍] 提交链接:Two Buttons 题面: B. Two Buttons time limit per test 2 seconds memory limit per test 256 ...
- 《Linux Device Drivers》第八章 分配内存——note
本章主要介绍Linux内核的内存管理. kmalloc函数的内幕 不正确所获取的内存空间清零 分配的区域在物理内存中也是连续的 flags參数 <linux/slab.h> <lin ...
- layoutSubviews, setNeedsLayout, layoutIfNeeded
layoutSubviews总结 ios layout机制相关方法 - (CGSize)sizeThatFits:(CGSize)size- (void)sizeToFit——————- - (voi ...
- Intellij IDEA报错:Could not save application settings: java.io.IOException: java.lang.AssertionError: Unexpected content storage modificat
Question: i have a message saying "Could not save application settings: java.io.IOException: ja ...
- poj2262 Goldbach's Conjecture——筛素数
题目:http://poj.org/problem?id=2262 水水更健康~ 代码如下: #include<iostream> #include<cstdio> #incl ...
- Jsp入门小常识
因为选修了一门信息系统的课,选择了用jsp做了一个系统.在这期间自学了jsp的一点皮毛,特与大家分享: script标签:用于向jsp中嵌入java代码块,<% // embed java c ...
- 【BZOJ3527】[ZJOI2014] 力(FFT)
题目: BZOJ3527 分析: FFT应用第一题-- 首先很明显能把\(F_j\)约掉,变成: \[E_j=\sum _{i<j} \frac{q_i}{(i-j)^2}-\sum_{i> ...
- Linux下查看CPU和内存(很详细)
在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要.在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况.运行 top 命令后,CPU 使用状态会 ...
- Emoji过滤
private static boolean isNotEmojiCharacter(char codePoint) { return (codePoint == 0x0) || (codePoint ...