简单的来记就是axis=0代表往跨行(down),而axis=1代表跨列(across) 轴用来为超过一维的数组定义的属性,二维数据拥有两个轴: 第0轴沿着行的垂直往下,第1轴沿着列的方向水平延伸. 换句话说: 使用0值表示沿着每一列或行标签/索引值向下执行方法 使用1值表示沿着每一行或者列标签横向执行对应的方法 举例1: df.mean(axis=1)表示沿着水平的方向求均值:df.mean(axis=0)表示沿着垂直的方向求均值 举例2: df.drop(name,axis=1)表示将nam…
pandas中的DataFrame中的空数据处理方法: 方法一:直接删除 1.查看行或列是否有空格(以下的df为DataFrame类型,axis=0,代表列,axis=1代表行,以下的返回值都是行或列索引加上布尔值)• isnull方法 • 查看行:df.isnull().any(axis=1)  • 查看列:df.isnull().any(axis=0)• notnull方法:• 查看行:df.notnull().all(axis=1)• 查看列:df.notnull().all(axis=0…
目录 行的union pd.concat df.append 列的join pd.concat pd.merge df.join 行列转置 pivot stack & unstack melt 本文示例数据下载,密码:vwy3 import pandas as pd # 数据是之前在cnblog上抓取的部分文章信息 df = pd.read_csv('./data/SQL测试用数据_20200325.csv',encoding='utf-8') # 为了后续演示,抽样生成两个数据集 df1 =…
对数据进行操作时,经常需要在横轴方向或者数轴方向对数据进行操作,这时需要设定参数axis的值: axis = 0 代表对横轴操作,也就是第0轴: axis = 1 代表对纵轴操作,也就是第1轴: numpy库中横轴.纵轴 axis 参数实例详解: In [1]: import numpy as np #生成一个3行4列的数组 In [2]: a = np.arange(12).reshape(3,4) In [3]: a Out[3]: array([[ 0, 1, 2, 3], [ 4, 5,…
axis有两个值:axis=0或者axis=1 看到很多资料都不太理解,把我个人理解说一下: 下面这张图,在很多资料中都看到了,我只能说先死记住 axis=0,代表跨行(注意看这张图的axis=0的箭头向下指),axis=1,代表跨列(注意看这张图的axis=1的箭头向右指,水平方向) 二维数据拥有两个轴: 0轴沿着行垂直往下走,1轴沿着列水平走 也可以说: 1.使用axis=0表示沿着行标签/索引值(index) 向下执行     #如果你学了pandas中的sreies就知道index了 2…
看起来挺简单的样子,但是在给sum函数中加入参数.sum(a,axis=0)或者是.sum(axis=1) 就有点不解了 在我实验以后发现 我们平时用的sum应该是默认的axis=0 就是普通的相加 而当加入axis=1以后就是将一个矩阵的每一行向量相加 例如: import numpy as np np.sum([[0,1,2],[2,1,3],axis=1) 结果就是:array([3,6]) 下面是自己的实验结果,与上面的说明有些不符: a = np.array([[0, 2, 1]])…
Stackoverflow.com是程序员的好去处,本公众号将以pandas为主题,开始一个系列,争取做到每周一篇,翻译并帮助pandas学习者一起理解一些有代表性的案例.今天的主题就是Pandas与Numpy中一个非常重要的参数:axis.(轴) Stackoverflow问题如下: python中的axis究竟是如何定义的呢?他们究竟代表是DataFrame的行还是列?考虑以下代码: >>>df = pd.DataFrame([[1, 1, 1, 1], [2, 2, 2, 2],…
转自:http://blog.csdn.net/wangying19911991/article/details/73928172 https://www.zhihu.com/question/58993137 python中的axis究竟是如何定义的呢?他们究竟代表是DataFrame的行还是列?考虑以下代码: >>>df = pd.DataFrame([[1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3]], \ columns=["col1&q…
https://blog.csdn.net/sky_kkk/article/details/79725646 numpy中axis取值的说明首先对numpy中axis取值进行说明:一维数组时axis=0,二维数组时axis=0,1,维数越高,则axis可取的值越大,数组n维时,axis=0,1,…,n.为了方便下面的理解,我们这样看待:在numpy中数组都有着[]标记,则axis=0对应着最外层的[],axis=1对应第二外层的[],以此类推,axis=n对应第n外层的[].下面开始从axis=…
在faster rcnn内进行随机裁剪数据增强,训练一段时间后报错: gt_argmax_overlaps = overlaps.argmax(axis=0) ValueError: attempt to get argmax of an empty sequence 参考博客http://blog.csdn.net/jiajunlee/article/details/50470897知原因是裁剪的图像或目标宽高比太小导致,更改裁剪策略可…
Outline 前几天,数据清洗时有用到pandas去过滤大量数据中的“负值”: 把过滤出来的“负值”替换为“NaN”或者指定的值. 故做个小记录. 读取CSV文件 代码: import pandas as pd import numpy as np df = pd.read_csv('D:\All_Kinds_Stock_Data\windpy_filter_after\SH600036.csv') df # 开发环境: ipython notebook 下 读取本地csv文件,输出结果如下:…
np.mean(img, axis=(0, 1))   img 是shape为(H,W,3)的图片 np.mean(img, axis=(0, 1)) 是求出各个通道的平均值,shape是 (3, )   axis=(0, 1)其实表示的是对第0和1维共同展成的二维平面进行求均值.…
目录 1  分组操作 1.1  按照列进行分组 1.2  按照字典进行分组 1.3  根据函数进行分组 1.4  按照list组合 1.5  按照索引级别进行分组 2  分组运算 2.1  agg 2.2  transform 2.3  apply 3  利用groupby技术多进程处理DataFrame 我们在这里要讲一个很常用的技术, 就是所谓的分组技术, 这个在数据库中是非常常用的, 要去求某些分组的统计量, 那么我们需要知道在pandas里面, 这些分组技术是怎么实现的. 分组操作 我们…
1.空值 1.1 有两种丢失数据: None: Python自带的数据类型 不能参与到任何计算中 np.nan: float类型 能参与计算,但结果总是nan # None+2 # 报错 # np.nan + 2 # 值仍然是nan 1.2 np.nan(NaN) 数组直接运算会得到nan,但可以使用np.nansum()函数来计算nan,此时视nan为0. ndarr = np.array([1,2,3,np.nan]) np.sum(ndarr) np.nansum(ndarr) Serie…
p分位函数(四分位数)概念与pandas中的quantile函数 函数原型 DataFrame.quantile(q=0.5, axis=0, numeric_only=True, interpolation=’linear’) 参数 - q : float or array-like, default 0.5 (50% quantile 即中位数-第2四分位数) 0 <= q <= 1, the quantile(s) to compute - axis : {0, 1, ‘index’,…
有两种丢失数据 ——None ——np.nan(NaN) None是python自带的,其类型为python object.因此,None不能参与到任何计算中 Object类型的运算比int类型的运算慢的多 计算不同数据类型求和时间 %timeit np.arange(1e5,dtype=xxx).sum() %timeit是指python表达式或语句的执行时间 Pandas中的none与np.nan都视作np.nan 数据清洗 df.loc[index,column] ------>元素索引,…
最近处理数据需要分组计算,又用到了groupby函数,温故而知新. 分组运算的第一阶段,pandas 对象(无论是 Series.DataFrame 还是其他的)中的数据会根据你所提供的一个或多个键被拆分(split)为多组.拆分操作是在对象的特定轴上执行的.例如,DataFrame 可以在其行(axis=0)或列(axis=1)上进行分组.然后,将一个函数应用到各个分组并产生一个新值.最后,所有这些函数的执行结果会被合并到最终的结果对象中.结果对象的形式一般取决于数据上所执行的操作. 举例说明…
*从本篇开始所有文章的数据和代码都已上传至我的github仓库:https://github.com/CNFeffery/DataScienceStudyNotes 一.简介 pandas提供了很多方便简洁的方法,用于对单列.多列数据进行批量运算或分组聚合运算,熟悉这些方法后可极大地提升数据分析的效率,也会使得你的代码更加地优雅简洁,本文就将针对pandas中的map().apply().applymap().groupby().agg()等方法展开详细介绍,并结合实际例子帮助大家更好地理解它们…
pandas中的数据结构-DataFrame DataFrame是什么? 表格型的数据结构 DataFrame 是一个表格型的数据类型,每列值类型可以不同 DataFrame 既有行索引.也有列索引 DataFrame 常用于表达二维数据,但可以表达多维数据 DataFrame创建 从字典创建 >>> import pandas as pd >>> frame=pd.DataFrame(data) >>> data={'name':['a','b','…
四分位数与pandas中的quantile函数 1.分位数概念 统计学上的有分位数这个概念,一般用p来表示.原则上p是可以取0到1之间的任意值的.但是有一个四分位数是p分位数中较为有名的. 所谓四分位数:即把数值由小到大排列并分成四等份,处于三个分割点位置的数值就是四分位数. 为了更一般化,在计算的过程中,我们考虑p分位.当p=0.25 0.5 0.75 时,就是在计算四分位数. 第1四分位数 (Q1),又称"较小四分位数",等于该样本中所有数值由小到大排列后第25%的数字. 第2四分…
使用 pandas 处理数据时,遍历和并行处理是比较常见的操作了本文总结了几种不同样式的操作和并行处理方法. 1. 准备示例数据 import pandas as pd import numpy as np df = pd.DataFrame(np.random.randint(40, 100, (5, 10)), columns=[f's{i}' for i in range(10)], index=['john', 'bob', 'mike', 'bill', 'lisa']) df['is…
1 简介 我们在利用pandas开展数据分析时,应尽量避免过于碎片化的组织代码,尤其是创建出过多不必要的中间变量,既浪费了内存,又带来了关于变量命名的麻烦,更不利于整体分析过程代码的可读性,因此以流水线方式组织代码非常有必要. 图1 而在以前我撰写的一些文章中,为大家介绍过pandas中的eval()和query()这两个帮助我们链式书写代码,搭建数据分析工作流的实用API,再加上下面要介绍的pipe(),我们就可以将任意pandas代码完美组织成流水线形式. 2 在pandas中灵活利用pip…
pandas中常用的功能: 1.显示所有的列的信息,999表示显示最大的列为999 pd.options.display.max_columns=999 2.读取excel时设置使用到列的名称,和列的数据类型 pd.read_excel(路径,sheet_name='业务员',usecols=['条形码','业务员自定义'],dtype={'外部平台单号':str}) 3.去重(删除重复项) excelData.drop_duplicates(keep='first') #去重保留第一个 4.表…
pandas.DataFrame.where DataFrame.where(cond, other=nan, inplace=False, axis=None, level=None, try_cast=False, raise_on_error=True) inplace : boolean, default False Whether to perform the operation in place on the data axis : alignment axis if needed,…
好久好久没有更新博客了,之前自学的估计也都忘记差不多了.由于毕业选择从事的行业与自己的兴趣爱好完全两条路,心情也难过了很久,既然入职了就要好好干,仍要保持自己的兴趣,利用业余时间重拾之前的乐趣. 从基本的数据清理学起吧 讲一下drop函数的用法 删除表中的某一行或者某一列更明智的方法是使用drop,它不改变原有的df中的数据,而是可选择性的返回另一个dataframe来存放删除后的数据. 删除无效项 df[df.isnull()] #返回的是个true或false的Series对象(掩码对象),…
1.创建数据框或读取外部csv文件 创建数据框数据 """ 设计数据 """ import pandas as pd data = {"A": [2,3,9], "B": [4,6,11], "C": [5,6,12], "D": [6,1,5]} index = ["X","Y","Z"] df = pd.…
1.创建 1.1  标准格式创建 DataFrame创建方法有很多,常用基本格式是:DataFrame 构造器参数:DataFrame(data=[],index=[],coloumns=[]) In [272]: df2=DataFrame(np.arange(16).reshape((4,4)),index=['a','b','c','d'],columns=['one','two','three','four']) In [273]: df2 Out[273]: one two three…
参考:https://blog.csdn.net/cjsyr6wt/article/details/78200444?locationNum=11&fps=1 以下是pandas官方的解释: DataFrame.groupby(by = None,axis = 0,level = None,as_index = True,sort = True,group_keys = True,squeeze = False,observe = False,** kwargs ) as_index : boo…
一.concat:沿着一条轴,将多个对象堆叠到一起 concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, copy=True): objs:需要连接的对象集合,一般是列表或字典: axis:连接轴向: join:参数为‘outer’或‘inner’: join_axes=[]:指定自定义的索…
Pandas中DateFrame修改列名 在做数据挖掘的时候,想改一个DataFrame的column名称,所以就查了一下,总结如下: 数据如下: >>>import pandas as pd >>>a = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6], 'C':[7,8,9]}) >>> a A B C 0 1 4 7 1 2 5 8 2 3 6 9 方法一:暴力方法 >>>a.columns = […