精华内容
下载资源
问答
  • 使用python将另一和总和内容分组
    2020-12-15 14:57:15

    您可以将所有列添加到[]以进行聚合:

    print (df.groupby(by=['class_energy'])['ACT_TIME_AERATEUR_1_F1','ACT_TIME_AERATEUR_1_F3','ACT_TIME_AERATEUR_1_F5'].sum())

    ACT_TIME_AERATEUR_1_F1 ACT_TIME_AERATEUR_1_F3 \

    class_energy

    high 45.670000 0.000000

    low 63.333333 63.333333

    medium 0.000000 20.000000

    ACT_TIME_AERATEUR_1_F5

    class_energy

    high 55.940000

    low 87.323333

    medium 23.990000

    你也可以使用参数as_index = False:

    print (df.groupby(by=['class_energy'],as_index=False)['ACT_TIME_AERATEUR_1_F1','ACT_TIME_AERATEUR_1_F5'].sum())

    class_energy ACT_TIME_AERATEUR_1_F1 ACT_TIME_AERATEUR_1_F3 \

    0 high 45.670000 0.000000

    1 low 63.333333 63.333333

    2 medium 0.000000 20.000000

    ACT_TIME_AERATEUR_1_F5

    0 55.940000

    1 87.323333

    2 23.990000

    如果只需要汇总前3列:

    print (df.groupby(by=['class_energy'],as_index=False)[df.columns[:3]].sum())

    class_energy ACT_TIME_AERATEUR_1_F1 ACT_TIME_AERATEUR_1_F3 \

    0 high 45.670000 0.000000

    1 low 63.333333 63.333333

    2 medium 0.000000 20.000000

    ACT_TIME_AERATEUR_1_F5

    0 55.940000

    1 87.323333

    2 23.990000

    …或没有最后的所有列:

    print (df.groupby(by=['class_energy'],as_index=False)[df.columns[:-1]].sum())

    class_energy ACT_TIME_AERATEUR_1_F1 ACT_TIME_AERATEUR_1_F3 \

    0 high 45.670000 0.000000

    1 low 63.333333 63.333333

    2 medium 0.000000 20.000000

    ACT_TIME_AERATEUR_1_F5

    0 55.940000

    1 87.323333

    2 23.990000

    更多相关内容
  • 今天小编就为大家分享一篇对dataframe进行列相加,行相加的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 本文介绍的是python中pandas.DataFrame对行与求和及添加新行与的相关资料,下面话不多说,来看看详细的介绍吧。 方法如下: 导入模块: from pandas import DataFrame import pandas as pd import numpy as np ...
  • 今天小编就为大家分享一篇python中利用numpy.array()实现俩个数值列表的对应相加方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 1)通过提供axis = 1来执行w.r.t的groupby.根据Per @ Boud的评论,你可以通过分组数组中的小调整得到你想要的结果:df.groupby((np.arange(len(df.columns)) // 2) + 1, axis=1).sum().add_prefix('s')根据这种情况...

    1)通过提供axis = 1来执行w.r.t列的groupby.根据Per @ Boud的评论,你可以通过分组数组中的小调整得到你想要的结果:

    df.groupby((np.arange(len(df.columns)) // 2) + 1, axis=1).sum().add_prefix('s')

    36570

    根据这种情况进行分组:

    np.arange(len(df.columns)) // 2

    # array([0, 0, 1, 1, 2, 2], dtype=int32)

    df = pd.DataFrame(np.add.reduceat(df.values, np.arange(len(df.columns))[::2], axis=1))

    df.columns = df.columns + 1

    df.add_prefix('s')

    36570

    时间限制:

    对于横跨20列的100万行DF:

    from string import ascii_lowercase

    np.random.seed(42)

    df = pd.DataFrame(np.random.randint(0, 10, (10**6,20)), columns=list(ascii_lowercase[:20]))

    df.shape

    (1000000, 20)

    def with_groupby(df):

    展开全文
  • 对dataframe进行列相加,行相加

    千次阅读 2020-12-24 21:44:19
    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":5,"count":5}]},"card":[{"des":"Quick BI 是一款专为云上用户和企业量身打造的新一代自助式智能BI服务平台,其简单...

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":5,"count":5}]},"card":[{"des":"Quick BI 是一款专为云上用户和企业量身打造的新一代自助式智能BI服务平台,其简单易用的可视化操作和灵活高效的多维分析能力,让精细化数据洞察为商业决策保驾护航。","link1":"https://www.aliyun.com/product/bigdata/bi","link":"https://www.aliyun.com/product/bigdata/bi","icon":"https://img.alicdn.com/tfs/TB1dz0rRXXXXXaaaXXXXXXXXXXX-200-200.png","btn2":"Quick BI标准版49元/月","tip":"2020年入选全球Gartner ABI魔力象限,为中国首个且唯一入选BI产品","btn1":"了解Quick BI","link2":"https://common-buy.aliyun.com/?spm=a2c0j.8190895.737583.btn1.gGm2It&commodityCode=quickbi#/buy","title":"Quick BI 数据分析与展现"}],"search":[],"countinfo":{"search":{"length_pc":0,"length":0},"card":{"length_pc":0,"length":0}},"simplifiedDisplay":"newEdition","newCard":[{"link":"https://www.aliyun.com/product/bigdata/bi","title":"Quick BI 数据分析与展现","ifIcon":"icon","icon":"quickbi","des":"阿里云客户都在用的BI产品——提供新用户30天免费试用,无缝对接各类云上数据库和自建数据库,0代码鼠标拖拽式操作,让业务用户也能一键轻松实现海量数据可视化分析。","btn1":"了解Quick BI","link1":"https://www.aliyun.com/product/bigdata/bi","btn2":"Quick BI标准版49元/月","link2":"https://common-buy.aliyun.com/?spm=a2c0j.8190895.737583.btn1.gGm2It&commodityCode=quickbi#/buy","btn3":"产品文档","link3":"https://help.aliyun.com/product/30343.html","contentLink":"https://www.aliyun.com/product/bigdata/bi","infoGroup":[{"infoName":"产品入门","infoContent":{"firstContentName":"产品Demo体验","firstContentLink":"https://das.base.shuju.aliyun.com/product/QBIdemo.htm?spm=a2c0j.14192723.J_2957406900.4.55d83483975s4E&menuId=muorajp2dv8","lastContentName":"30天免费开通","lastContentLink":"http://das.base.shuju.aliyun.com/home?spm=a2c0j.14192723.J_2957406900.2.55d83483975s4E"}},{"infoName":"产品资讯","infoContent":{"firstContentName":"企业BI建设推广之道","firstContentLink":"https://yqh.aliyun.com/live/detail/14472?spm=a2c0j.14192723.3221942550.1.55d83483975s4E","lastContentLink":"https://www.aliyun.com/activity/daily/qbi?spm=a2c0j.14192723.3221942550.2.55d83483975s4E","lastContentName":"入选Gartner魔力象限"}},{"infoName":"最佳实践","infoContent":{"firstContentName":"快速入门文档","firstContentLink":"https://help.aliyun.com/document_detail/161417.html?spm=a2c0j.14192723.J_7682253700.4.55d83483975s4E","lastContentName":"快速入门视频","lastContentLink":"https://help.aliyun.com/document_detail/161903.html?spm=a2c4g.11186623.6.827.6cd6515cQL8Iqs"}},{"infoName":"线上培训","infoContent":{"firstContentName":"在线课程学习","firstContentLink":"https://yida.alibaba-inc.com/o/QuickBI_Train?spm=a2c0j.14192723.J_2957406900.6.55d83483975s4E","lastContentName":"本地部署咨询","lastContentLink":"https://yida.alibaba-inc.com/o/QBISoulutions?spm=a2c0j.14192723.J_2957406900.7.55d83483975s4E"}}]}]}

    {"$env":{"JSON":{}},"$page":{"env":"production"},"$context":{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":5,"count":5}]},"card":[{"des":"Quick BI 是一款专为云上用户和企业量身打造的新一代自助式智能BI服务平台,其简单易用的可视化操作和灵活高效的多维分析能力,让精细化数据洞察为商业决策保驾护航。","link1":"https://www.aliyun.com/product/bigdata/bi","link":"https://www.aliyun.com/product/bigdata/bi","icon":"https://img.alicdn.com/tfs/TB1dz0rRXXXXXaaaXXXXXXXXXXX-200-200.png","btn2":"Quick BI标准版49元/月","tip":"2020年入选全球Gartner ABI魔力象限,为中国首个且唯一入选BI产品","btn1":"了解Quick BI","link2":"https://common-buy.aliyun.com/?spm=a2c0j.8190895.737583.btn1.gGm2It&commodityCode=quickbi#/buy","title":"Quick BI 数据分析与展现"}],"search":[],"countinfo":{"search":{"length_pc":0,"length":0},"card":{"length_pc":0,"length":0}},"simplifiedDisplay":"newEdition","newCard":[{"link":"https://www.aliyun.com/product/bigdata/bi","title":"Quick BI 数据分析与展现","ifIcon":"icon","icon":"quickbi","des":"阿里云客户都在用的BI产品——提供新用户30天免费试用,无缝对接各类云上数据库和自建数据库,0代码鼠标拖拽式操作,让业务用户也能一键轻松实现海量数据可视化分析。","btn1":"了解Quick BI","link1":"https://www.aliyun.com/product/bigdata/bi","btn2":"Quick BI标准版49元/月","link2":"https://common-buy.aliyun.com/?spm=a2c0j.8190895.737583.btn1.gGm2It&commodityCode=quickbi#/buy","btn3":"产品文档","link3":"https://help.aliyun.com/product/30343.html","contentLink":"https://www.aliyun.com/product/bigdata/bi","infoGroup":[{"infoName":"产品入门","infoContent":{"firstContentName":"产品Demo体验","firstContentLink":"https://das.base.shuju.aliyun.com/product/QBIdemo.htm?spm=a2c0j.14192723.J_2957406900.4.55d83483975s4E&menuId=muorajp2dv8","lastContentName":"30天免费开通","lastContentLink":"http://das.base.shuju.aliyun.com/home?spm=a2c0j.14192723.J_2957406900.2.55d83483975s4E"}},{"infoName":"产品资讯","infoContent":{"firstContentName":"企业BI建设推广之道","firstContentLink":"https://yqh.aliyun.com/live/detail/14472?spm=a2c0j.14192723.3221942550.1.55d83483975s4E","lastContentLink":"https://www.aliyun.com/activity/daily/qbi?spm=a2c0j.14192723.3221942550.2.55d83483975s4E","lastContentName":"入选Gartner魔力象限"}},{"infoName":"最佳实践","infoContent":{"firstContentName":"快速入门文档","firstContentLink":"https://help.aliyun.com/document_detail/161417.html?spm=a2c0j.14192723.J_7682253700.4.55d83483975s4E","lastContentName":"快速入门视频","lastContentLink":"https://help.aliyun.com/document_detail/161903.html?spm=a2c4g.11186623.6.827.6cd6515cQL8Iqs"}},{"infoName":"线上培训","infoContent":{"firstContentName":"在线课程学习","firstContentLink":"https://yida.alibaba-inc.com/o/QuickBI_Train?spm=a2c0j.14192723.J_2957406900.6.55d83483975s4E","lastContentName":"本地部署咨询","lastContentLink":"https://yida.alibaba-inc.com/o/QBISoulutions?spm=a2c0j.14192723.J_2957406900.7.55d83483975s4E"}}]}]}}

    展开全文
  • 在学这数据结构这部分内容的时候,我已经深刻体会到Python语法知识的重要性。在后来尝试用Python完成数据分析过程的时候,才更深深体会到啥叫一环扣一口,因为这些枯燥的数据结构的知识是接下来分析实操的基础。以下...

    在学这数据结构这部分内容的时候,我已经深刻体会到Python语法知识的重要性。在后来尝试用Python完成数据分析过程的时候,才更深深体会到啥叫一环扣一口,因为这些枯燥的数据结构的知识是接下来分析实操的基础。

    以下分为四部分展开:

    Numpy一维数据结构Array

    Pandas一维数据结构:Series

    Numpy二维数据结构:Array

    Pandas二维数据结构: DataFrame


    Numpy(numerical Python)一维数据结构:Array(数组)

    e1fda05c459e9525984cfb3e778ec7ab.png

    1)定义一维Numpy数组

    2)查询第一个元素

    3)切片访问 访问第2、3、4个元素

    4)用for循环访问数组中的全部元素

    5)用dtype来查询数据类型

    import numpy as np
    a=np.array([2,3,4,5])
    print(a[0])
    print(a[1:3])
    print(a.dtype)
    for i in a:
        print(i,end=" ")

    23cd0a44c29c45547c425c8150839fc5.png

    Numpy一维数组和列别的区别

    1)一维数组具有统计功能

    平均值mean()

    标准差srd()

    2)一维数组可进行向量化计算

    向量相加

    乘以标量

    d0a8ad69390e69222147df450a862add.png

    3)Numpy数组中的元素必须是同一种数据类型,而列表中的元素可以是不同的数据类型

    Pandas的一维数据结构:Series

    c1aa47e24794127ba9cf777c779f9933.png

    1)定义一维数组

    age=pd.Series([20,21,23,25,27,28,30],
                 index=['a','b','c','d','e','f','g'])

    2)获取描述统计信息

    print(age.describe())

    输出结果:

    8546642d32fb04a96c1f19746c016790.png

    3)获取一维数组中的元素

    age=pd.Series([20,21,23,25,27,28,30],
                 index=['a','b','c','d','e','f','g'])
    print(age.iloc[0])
    print(age.loc['g'])

    ebf3dcb48f91b16ad37bcc939dc69a44.png

    4)一维数组 向量相加

    s1=pd.Series([4,5,6.5,8,12], index=['a','b','c','d','e'])
    s2=pd.Series([1,2,3,4,5], index=['a','b','c','f','g'])
    s3=s1+s2
    print(s3)

    190eb5064807b8d5546b0fee8d58a7f5.png

    对于s1+s2相加后有空值,处理方法有两种:

    1)删除缺失值 s3.dropna()

    f62b53d248eef4ae973a6ab2e81a149a.png

    2)将缺失值进行填充 s3=s1.add(s2, fill_value=0)

    75871a942a2f1cf5b93f377a9a7cb1ae.png

    Numpy二维数据结构:Array

    二维数据分析(有行也有列)

    829ce28ba2d96b2d8b7f069950ba49d0.png

    1)定义二维数组

    import numpy as np
    a=np.array([
        [1,2,3,4],
        [5,6,7,8],
        [9,10,11,12]
    ])

    2)查询

    查询数组种的某个元素

    a[0,2] a[行的序号,列的序号]

    获取某一行的元素 a[行的序号,:]

    获取某一列的元素 a[:,列的序号]

    4c544370913468dabba148d39e24da5d.png

    3)Numpy数轴参数

    数轴参数的名称 asix, 通过指定asix的值来指定按照某一行或者某一列来进行计算

    Axis=1 按行计算平均值/标准差等等

    Axis=0 按列计算平均值/标准差等等

    ae6987801d0256296206a8a61c70c7fc.png

    Pandas二维数据结构: DataFrame

    89cd7dde6badc02c4914b810d75fbac0.png

    定义字典,并将这些数据转换成DataFrame

    702bf8496daed691e1ef1750ac8cf5c1.png

    1)输出有序的数据框

    注意:因为字典是无序的数据结构,所以最终的输出结果与输入顺序不一致

    (可以用OrderDict将无序变成有序)

    c6729598c56318d229a21bd4ff04ffed.png
    from collections import OrderedDict
    salesOrderedDict=OrderedDict(salesDict)
    salesDf=pd.DataFrame(salesOrderedDict)
    print(salesDf)

    5687bb25768193369ddbc1e87a3156e5.png

    2)对定义好的数据框取平均值

    (是按照每一列来取数据值)

    print(salesDf.mean())

    9e14fcd1d83e53cebb42b9bb10f8f168.png

    3)查询

    iloc属性用于根据位置查询值

    1.查询元素

    2.获取第一行

    3.获取第一列

    print(salesDf.iloc[1,1])
    print(salesDf.iloc[0,:])
    print(salesDf.iloc[:,0])

    loc属性用于根据索引(行名和列名)查询值

    1.查询元素

    2.获取第一行

    3.获取第一列

    print(salesDf.loc[0,'社保卡号'])
    print(salesDf.loc[0,:])
    print(salesDf.loc[:,'商品名称'])

    1.查询某几列 print(salesDf[['社保卡号','销售数量']])

    2.切片功能:指定范围 (例如查询社保卡号到销售数量的列)

    4)通过条件判断筛选

    1构建查询条件

    querySer=salesDf.loc[:,'销售数量']>1
    print(querySer)

    81f6bc37b163e636f32e8c397fd862d1.png

    应用查询条件 (只把符合条件的行显示出来)

    querySer=salesDf.loc[:,'销售数量']>1
    salesDf.loc[querySer,:]

    b698f5382eb8da97726c718948ca016e.png

    其他操作:

    1)读取Excel数据

    import pandas as pd
    fileNameStr=r'C:UsersTTXDesktop跟猴子学习人工智能核心技术数据分析(高级)(Python)第3关:数据分析的基本过程朝阳医院2018年销售数据.xlsx'
    xl=pd.ExcelFile(fileNameStr)
    salesDf=xl.parse('Sheet1')
    print(salesDf)

    2)打印前5行 salesDf.head(5)

    salesDf.head(5)

    3)查看列的数据类型 dtype

    salesDf.loc[:,'销售数量'].dtype

    输出结果:float64

    4)有多少行,多少列 shape

    salesDf.shape

    输出结果:

    4d1f39b4f5f2bcdb200f8c0dd84310ac.png

    5)每一列的描述统计信息 用describe

    salesDf.describe()

    2405ea41f07113165d8c621d7cba4b44.png
    展开全文
  • Python列表相加

    千次阅读 2021-12-23 20:27:45
    python列表相加示例和可能出现的错误
  • python 值相同,分别相加

    千次阅读 2020-12-06 12:10:37
    待处理数据如下:0.2 0.3 0.5 10.3 0.1 0.2 30.4 0.2 0.3 10.2 0.2 0.2 20.3 0.3 0.3 20.3 0.2 0.6 30.1 0.1 0.1 4如果最后一相同(全是整数),则前面的分别相加,然后按照最后一排序(从小到大)结果:0.6 0.5 ...
  • 嗨,我对python很新,并希望开始工作并远离excel . 我的问题有两个:第一部分是我有一个csv文件,看起来像这样row 1: 52.78 52.52 53.2 51.98 53.22 50.85 51.44 52.38 52.21 52.09 51.5 51.92row2 : 6.89 5.47 5.8 ...
  • Python pandas列转类型,列相加

    千次阅读 2019-11-26 10:19:19
    二维数组 import pandas as pd df = pd.DataFrame([ ['f','1','asd'], ['e','asds',None], ['d',3,5], ['c','4',6], ['b',None,7], ['a',6,'8'], ]) df.columns=['A','B','C'] print(df) ...转化B...
  • python列表相加

    千次阅读 2020-04-23 19:09:14
    1.若两列表长度相等,想得到两个列表每个元素相加结果: [a[i]+b[i] for i in range(len(a))] 2.两个列表直接使用+相加:效果类似于extend()函数 a=[1,2,3] b=[4,5,6] print(a+b) ...
  • 像这样的东西可以用于itertools:import pandas as pdimport numpy as npfrom itertools import combinationsfrom io import StringIOdata = """v1 v2 v31 2 10 4 11 3 3"""df = pd.read_csv(StringIO(data), sep='\...
  • 我有三数据,想要将不同的标量值相乘,然后将它们加到一中.假设我想将Attibute_1乘以10,将Attribute_2乘以5,将Attribute_3乘以2Attribute_1 | Attribute_2 | Attribute_3 | Score |______________________________...
  • python 多文件列相加

    2017-11-27 14:34:00
    多个文件每个文件的同样的第一列的情况下, 第三列相加,没有的就补零 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 /tmp$cata aabb1 ddbb2 aabb3 eexx4 /tmp$catb bbcc1 aabbb2 ccdd3 dd...
  • 比如:fd=open("text.txt")result=[]list=['A','B','C','D','E','F','G'... 有很多列,然后让每行第一列数值相加,就像这四列相加得出 ['1', '0', '1', '0', '1', '0', '4', '0', '1' ]现在有很多列,求相加的代码 展开
  • 问题遇到的现象和发生背景 有这样一些表格,我想首先的内容为:如果前两列完全相同,则第三数据相加,也就是合并相同项 中相同颜色的实现合并,成为: 120 181 0.307692308 120 140 0.571428571 120 165 0....
  • 如何使用python值求和

    千次阅读 2020-11-27 21:53:41
    如果我可以为任意数量的执行此操作会很棒,在哈希映射中接收结果看起来像columnName => columnSum.正如您可能猜到的那样,我不可能首先从数据库中获取求和值,因此提出问题的原因. 解决方法: >>> from collections ...
  • python合并dataframe中的行并将值相加

    千次阅读 2021-04-26 16:52:52
    我想这会有帮助。这段代码可以处理任意数量的连续“T”,甚至可以更改要组合的字符。我在代码中添加了注释来解释它的作用。在import pandas as pddef combine(df):combined = [] # Init empty listlength = len(df....
  • import pandas as pd if __name__ == "__main__": df= pd.read_csv('C:\Users\haihua.geng\Downloads\dataa.txt',sep="\t",names=["col1","col2"... df['col']=df['col1']+df...
  • 在进行数据操作时, 经常会碰到基于同一进行错位相加减的操作, 即对某一进行向上或向下平移(shift). 往常, 我们都会使用循环进行操作, 但经过查阅相关资料, 发现结合pandas里的groupby和shift两个函数就能轻松...
  • python两个数据表中的对应数据相加

    千次阅读 2021-07-01 05:26:30
    这时候需要用到数据表对应值相加。 代码如下: 先读进来一个数据表,比如 df1 是湖北的。 在df1 的基础上创建一个空表。 df_empty = pd.DataFrame(np.zeros(df1.shape), columns=df1.columns, index=df1.index...
  • Python 批量对txt求和

    2020-11-27 21:53:36
    # 批量对每一个txt的需求求和import pandas as pdimport osimport linecachefile=r"C:\Users\zm....
  • python 值相同,分别相加?待处理数据如下:0.2 0.3 0.5 10.3 0.1 0.2 30.4 0.2 0.3 10.2 0.2 0.2 20.3 0.3 0.3 20.3 0.2 0.6 30.1 0.1 0.1 4如果最后一相同(全是整数),则前面的分别相加,然后按照最后一...
  • pandas是python环境下最有名的数据统计包,而DataFrame翻译为数据框,是一种数据组织方式,这篇文章主要给大家介绍了关于python中pandas.DataFrame对行与求和及添加新行与示例代码,文中给出了详细的示例代码,...
  • 可以将所有添加到[]以进行聚合:print (df.groupby(by=['class_energy'])['ACT_TIME_AERATEUR_1_F1', 'ACT_TIME_AERATEUR_1_F3','ACT_TIME_AERATEUR_1_F5'].sum())ACT_TIME_AERATEUR_1_F1 ACT_TIME_AERATEUR_1_F3 ...
  • python – 在Pandas DataFrame中求和

    千次阅读 2020-12-19 10:36:48
    在大熊猫DataFrame中,是否可以折叠具有相同值的,并将另一中的值相加?码data = {"score":{"0":9.397,"1":9.397,"2":9.397995,"3":9.397996,"4":9.3999},"type":{"0":"advanced","1":"advanced","2":"advanced",...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 25,794
精华内容 10,317
关键字:

列列相加python