pandas
晓东邪
扎实基础,记录学习点滴。
展开
-
python 操作数据库-pandas篇
python 操作数据库-pandas篇# -*- coding: utf-8 -*-# @Author: xiaodong# @Date : 2020/4/5from collections import Counterfrom functools import reduceimport pymysqlimport pandas as pdfrom sqlalchemy i...原创 2020-04-05 17:58:20 · 378 阅读 · 0 评论 -
numpy中np.nan(pandas中NAN)
在处理数据时遇到NAN值的几率还是比较大的,有的时候需要对数据值是否为nan值做判断,但是如下处理时会出现一个很诡异的结果:import numpy as npnp.nan == np.nan#此时会输出为False对np.nan进行help查看,输出如下:Help on float object:class float(object) | float(x) -> floating point原创 2017-01-11 23:02:16 · 73918 阅读 · 12 评论 -
时间序列中Hurst指数的计算(python代码)
在做时间序列分析时,需要计算Hurst指数,由于Hurst指数计算比较复杂,刚开始懒得自己写,就在github上进行搜索,多是这个代码:from numpy import std, subtract, polyfit, sqrt, logdef hurst(ts): """Returns the Hurst Exponent of the time series vector ts"""原创 2017-04-26 14:22:50 · 29659 阅读 · 22 评论 -
jupyter notebook中美化pandas中DataFrame的输出
在jupyter notebook中调用pandas时,DataFrame可以被很好的显示,是这个样子的:虽然比idle或者别的终端输出要好看很多,但是具体想查看符合某特定条件的还是需要不能很好的直接显示出来,实际上比较新的版本下,pandas支持一个style 的方法:1、利用style 和applymap 给特定值显示改变颜色1.1 如果只想对指定列进行颜色改变 2、利用style和apply原创 2017-05-05 14:33:10 · 29446 阅读 · 10 评论 -
将m行*n列数组转换为最大值为1最小值为0的相同shape数组
今天遇到个问题,给定一个m行*n列数组,将每行中最大值转换为1, 最小值转换为0,返回相同shape的一个数组,初遇到纠结了一会儿,不过很快也就搞定了,方法主要有2个, 如下:In [54]: import numpy as npIn [55]: arr = np.random.randn(10, 5)In [56]: arrOut[56]: array([[ 0.18857493, 0.46原创 2017-08-03 15:57:33 · 9011 阅读 · 0 评论 -
pandas 中Series的map函数
Series的map方法可以接受一个函数或含有映射关系的字典型对象。 (DataFrame中对应的是applymap()函数,当然DataFrame还有apply()函数)import pandas as pdfrom pandas import Series, DataFramedata = DataFrame({'food':['bacon','pulled pork','bacon','P原创 2016-11-16 00:07:47 · 20569 阅读 · 0 评论 -
pandas中read_sql(read_sql_query)中文字符乱码问题
使用pandas读取数据库时,由于存储有汉字,开始读取时发现汉字被乱码显示,如下:In [70]: import pymysqlIn [71]: conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', db='test')In [72]: import pandas as pdIn [73原创 2017-11-07 17:52:10 · 11958 阅读 · 0 评论 -
python中pandas库中DataFrame对行和列的操作使用方法
这个repo 用来记录一些python技巧、书籍、学习链接等,欢迎stargithub地址用pandas中的DataFrame时选取行或列:import numpy as npimport pandas as pdfrom pandas import Sereis, DataFrameser = Series(np.arange(3.))data = DataFrame...原创 2016-11-10 01:15:19 · 402221 阅读 · 13 评论 -
json.load 与 pandas.read_csv 效率对比
工作需要将读入文件时间降低,之前采用的是读取csv文件,使用的Pandas,数据条数大概有130余万条,大概要耗时2-3s,速度有点慢,看是否能通过转换为json数据后用json.load 来代替, 具体对比如下: 可以看到使用pandas.read_csv 耗时不到json.load 的三分之一,看来这条路走不通~原创 2018-01-24 16:01:20 · 2803 阅读 · 2 评论 -
pandas中DataFrame关于显示值省略的解决方法
python的pandas库是一个非常好的工具,里面的DataFrame更是常用且好用,最近是越用越觉得设计的漂亮,pandas的很多细节设计的都非常好,有待使用过程中发掘。 好了,发完感慨,说一下最近DataFrame遇到的一个细节: 在使用DataFrame中有时候会遇到表格中的value显示不完全,像下面这样:In:import pandas as pdlongString = u'''原创 2017-04-12 21:20:14 · 35136 阅读 · 1 评论 -
相关系数和协方差
from pandas import Sereis, DataFrameimport pandas.io.data as weball_data = {}for ticker in ['AAPL','IBM','MSFT','GOOG']: all_data[ticker] = web.get_data_yahoo(ticker,'1/1/2000','1/1/2010')price =原创 2016-11-11 23:32:33 · 13678 阅读 · 0 评论 -
pandas中Series,DataFrame的连接(拼接)
这个repo 用来记录一些python技巧、书籍、学习链接等,欢迎stargithub地址上一篇中介绍了numpy中数组的拼接方式:numpy中数组的拼接 ,接下来介绍另一个数据处理库pandas中最常用的Series和DataFrame对序列和表格的操作 concat 如numpy中数组的拼接 中所讲是numpy中concatenate的变种,两个使用方法一致。 ...原创 2017-05-13 01:15:34 · 130195 阅读 · 0 评论 -
python 库pandas的一些介绍
可以输入给DataFrame构造器的数据二维ndarray #数据矩阵,还可以掺入行标和列标由数组、列表或元组组成的字典 #每个序列会变成DataFrame的一列。所有序列的长度必须相同由Series组成的字典 #每个Series会成为一列。如果没有显式指定索引,则各Series的索引会被合并成结果的行索引由字典组成的字典 #各内层字典会成为一列。键会被合并成结果的行索引,原创 2016-11-12 02:54:48 · 5645 阅读 · 0 评论 -
pandas数据规整化
merge函数的参数left #参与合并的左侧的DataFrame----------------------------------------------------------------right #参与合并的右侧DataFrame----------------------------------------------------------------how #原创 2016-11-13 11:43:11 · 8540 阅读 · 0 评论 -
pandas中的时间序列
datetime模块中的数据类型date #以公历形式存储日历日期(年,月,日)time #将时间存储为时,分,秒,毫秒datetime #存储日期和时间timedelta #表示两个datetime值之间的差(日、秒、毫秒)时间序列的基础频率别名 偏移量类型 说明------------------------------原创 2016-11-16 21:56:15 · 10177 阅读 · 0 评论 -
pandas处理数据加载、存储
read_csv/read_table 函数的参数---------------------------------------------------------------------path #表示文件系统位置,URL、文件型对象的字符串---------------------------------------------------------------------sep原创 2016-11-12 21:32:26 · 2963 阅读 · 0 评论 -
将.csv格式转换成.txt
最近有需要将csv转换成txt,没找到太好的库调用,就自己写了个简单的脚本,只有几行,就可以搞定了。import pandas as pddata = pd.read_csv('ch06/ex1.csv')with open('test.txt','a+') as f: for line in data.values: f.write((str(line[0])+'\t'+原创 2016-12-15 00:33:08 · 19988 阅读 · 0 评论 -
读取json格式为DataFrame(可转为.csv)
有时候需要读取一定格式的json文件为DataFrame,可以通过json来转换或者pandas中的read_csv()。import pandas as pdimport jsondata = DataFrame(open('jsonFile.txt','r+').read())#方法一dataCopy = pd.read_json('jsonFIle.txt',typ='frame') #原创 2016-12-23 22:15:12 · 16610 阅读 · 0 评论 -
tushare的使用
TuShare 官方定位是一个财经数据接口包,官网地址为:TuShare。可以用pip直接安装:pip install tushare由于里面对pandas等安装包的依赖,最好是在Anaconda环境下进行安装,不然还要装很多额外的依赖包,而Anaconda已经打包安装好了,相信我,Anaconda用起来会让你爱不释手。具体的使用技巧详见官网: 可以根据需要对自己...原创 2017-05-04 17:58:36 · 5863 阅读 · 0 评论 -
numpy中数组的拼接
这个repo 用来记录一些python技巧、书籍、学习链接等,欢迎stargithub地址python中的科学计算包numpy是一个非常好的扩展工具,numpy中最常见的就是针对数组ndarray的操作,部分操作与python内置的list(其拼接方式为append和extend)有重合,不过要注意使用方式,除此之外,针对ndarray进行数组拼接时有其自己的方式.接下来介绍我所知...原创 2017-05-13 00:11:21 · 61968 阅读 · 1 评论 -
python科学运算库numpy,pandas学习记录
Python中对数组修剪至少可以通过两种方式:>>> import numpy as np>>> >>> a = np.arange(10)>>> aarray([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])>>> a[a>5] = 5 #方法1:通过布尔判断剔除不合要求的值>>> aarray([0, 1, 2, 3, 4, 5, 5, 5, 5, 5])>>>原创 2016-10-27 21:11:57 · 4933 阅读 · 0 评论