![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pandas
xia ge tou lia
致力于数据分析行业~
展开
-
python基础——pandas——stack和unstack函数(附加reset_index,set_index函数)
在用pandas进行数据重排时,经常用到stack和unstack两个函数。stack的意思是堆叠,堆积,unstack即“不要堆叠”,我对两个函数是这样理解和区分的。 常见的数据的层次化结构有两种,一种是“花括号”(下图左),一种是表格(下图右),即下面这样的这两种形式:花括号结构只有“列方向”上的索引(类似于层次化的Series),结构更加偏向于堆叠(Series-stack,方便记忆)。表格在行列方向上均有索引(类似于DataFrame)。stack函数会将数据从”表格结构“变成”花括号原创 2020-08-21 08:57:49 · 2425 阅读 · 0 评论 -
python——合并同一个文件夹下所有excel文件
有以下,文件夹中的文件,共29个。各个excel有多个sheet文件,不同excel文件当中同一个sheet文件的数据结构是相同的,如下:现在需要将多个excel中的相同命名的sheet合并到同一个sheet当中,组合成一个excel文件。具体代码如下:#使用os模块walk函数,搜索出某目录下的全部excel文件def getFileName(filepath): file_list = [] for root,dirs,files in os.walk(fil..原创 2020-06-22 10:50:27 · 5761 阅读 · 4 评论 -
python的pandas重复值处理(duplicated()和drop_duplicates())
一、生成重复记录数据import numpy as npimport pandas as pd#生成重复数据df=pd.DataFrame(np.ones([5,2]),columns=['col1','col2'])df['col3']=['a','b','a','c','d']df['col4']=[3,2,3,2,2]df=df.reindex(columns=['col...原创 2020-04-13 17:36:57 · 13899 阅读 · 0 评论 -
python的pandas异常值处理(Z-score方法)
一、构建包含异常值的矩阵import pandas as pdimport matplotlib.pyplot as plt#构建包含异常值的矩阵df=pd.DataFrame([[1,12],[120,17],[3,31],[5,53],[2,22],[12,32],[13,43]],columns=['col1','col2'])df输出:二、画图#散点图p...原创 2020-04-13 17:04:43 · 10666 阅读 · 1 评论 -
python中pandas、numpy、sklearn.SimpleImputer的缺失值联合操作(dropna()函数、fillna()函数)
一、生成缺失值数据import pandas as pdimport numpy as npfrom IPython.core.interactiveshell import InteractiveShellInteractiveShell.ast_node_interactivity = "all"df=pd.DataFrame(np.random.randn(6,5),co...原创 2020-04-13 09:59:21 · 1540 阅读 · 0 评论 -
python——pandas——时间操作函数(to_datetime、DateOffset、DatetimeIndex联合操作)
案例:有以下数据集:其中,cmbirth代表的是距离1899年12月的整数月值。现在我们需要根据这个值,计算这些人出生在哪个年代?(70年代?80年代?90年代?)。先上代码:month0=pd.to_datetime('1899-12-15') #返回时间戳。dates=[month0+pd.DateOffset(months=cm) for cm in resp5['...原创 2020-03-26 22:57:13 · 8156 阅读 · 0 评论 -
python——pandas——query()函数
1、查询列price大于100的数据,返回对应的行名,然后可修改其值;条件'price>100'可以是'price<100 and price>20等。index=dfData.query('price>100').index原创 2020-03-24 13:02:54 · 1650 阅读 · 0 评论 -
python——pandas——rolling、ewm函数(移动平均VS加权移动平均)
在时间序列分析当中,我们经常会遇到时间轴上数据缺失值的补充,常用的方法使用移动平均值。Series的方法fillna()实现了该功能。常用的移动平均值方法有以下两种:滚动平均值roll_mean=reindexed['ppg'].rolling(window=30).mean()滚动平均值的理解较为简单:如现在有一个Series,包含100个数(),现在我们要以10为窗口,计算滚动...原创 2020-03-24 11:52:28 · 22304 阅读 · 0 评论 -
python——pandas——date_range函数(时间序列缺失值操作)
pandas.date_range(start=None, end=None, periods=None, freq='D', tz=None, normalize=False, name=None, closed=None, **kwargs)该函数主要用于生成一个固定频率的时间索引,在调用构造方法时,必须指定start、end、periods中的两个参数值,否则报错。主要参数说明:...原创 2020-03-20 23:32:27 · 2203 阅读 · 2 评论 -
python——numpy——数据分区(digitize,cut,qcut,quantile函数)
digitize函数主要用于将一组数据进行分区,案例如下import numpy as npimport pandas as pdfrom IPython.core.interactiveshell import InteractiveShellInteractiveShell.ast_node_interactivity = "all"df=pd.DataFrame(np.ra...原创 2020-03-13 12:05:38 · 8831 阅读 · 0 评论 -
python——pandas——dropna()函数
该函数主要用于滤除缺失数据。import pandas as pdimport numpy as npfrom IPython.core.interactiveshell import InteractiveShellInteractiveShell.ast_node_interactivity = "all"df=pd.DataFrame(np.random.randn(6,...原创 2020-03-13 10:29:15 · 8408 阅读 · 1 评论 -
python——numpy、pandas——diff函数(可应用于array,Series类型数据)
1、数组(array):表示相邻两个元素之差。import numpy as npa=np.array([1, 6, 7, 8, 12])diff_x1 = np.diff(a)diff_x1输出:array([5, 1, 1, 4])2、Series:可以用于同列相邻元素差值的计算(如时间间隔的计算等)。有以下数据,第四列minutes表示婴儿出生的时间点,现在我要...原创 2020-03-08 23:04:44 · 5956 阅读 · 0 评论 -
Python基础——dict(字典) ——items() 方法
Python 字典 items() 方法以列表返回可遍历的(键, 值) 元组数组。实例1首先创建一个字典dict1={}dict1[111]=3dict1[333]=19dict1[222]=13dict1输出:{111: 3, 333: 19, 222: 13}调用items方法:dict1.items()输出:dict_items([(111...原创 2020-03-07 23:26:25 · 3027 阅读 · 0 评论 -
python基础——使用defaultdict构造字典(对比dict)
一、案例有以下DataFrame:现要将构建一个dict字典,key值保存caseid,value值保存index(行号),通过观察数据我们发现,caseid不是唯一值,同一个caseid有可能存在多行。def MakePregMap(df): d = defaultdict(list) for index, caseid in df.caseid.iterit...原创 2020-03-06 22:00:37 · 1285 阅读 · 0 评论 -
python删除、修改表中满足条件的行或者列
1、删除门店sid在store_list中的门店。“~”表示取反的意思。dfRead = pd.read_csv('E:\data_saike\minei\data_Aug.csv')store_list=[26714,26721,26719,26713,26722,26740,26738,26734,26728,26716,26715,26712,26704,26703,26696,2...原创 2020-02-07 15:26:54 · 2307 阅读 · 0 评论