精华内容
下载资源
问答
  • 最慢:Method_1,因为.describe( “A”)来计算最小值,最大值,平均值,STDDEV和计数(5个计算在整个)介质:方法4,因为,.rdd(DF到RDD转换)减慢了过程。因为逻辑非常相似,所以Spark的催化剂优化器遵循非常相似的...

    备注:火花旨在对大数据工作 - 分布式计算。示例DataFrame的大小非常小,因此实际示例的顺序可以相对于小示例进行更改。

    最慢:Method_1,因为.describe( “A”)来计算最小值,最大值,平均值,STDDEV和计数(5个计算在整个列)

    介质:方法4,因为,.rdd(DF到RDD转换)减慢了过程。因为逻辑非常相似,所以Spark的催化剂优化器遵循非常相似的逻辑,并且操作次数最少(获取特定列的最大值,收集单值数据帧);而且, (.asDict()增加了一个小的额外时间比较3,2〜5)以毫秒为单位指定群的一个边缘节点上

    import pandas as pd

    import time

    time_dict = {}

    dfff = self.spark.createDataFrame([(1., 4.), (2., 5.), (3., 6.)], ["A", "B"])

    #-- For bigger/realistic dataframe just uncomment the following 3 lines

    #lst = list(np.random.normal(0.0, 100.0, 100000))

    #pdf = pd.DataFrame({'A': lst, 'B': lst, 'C': lst, 'D': lst})

    #dfff = self.sqlContext.createDataFrame(pdf)

    tic1 = int(round(time.time() * 1000))

    # Method 1: Use describe()

    max_val = float(dfff.describe("A").filter("summary = 'max'").select("A").collect()[0].asDict()['A'])

    tac1 = int(round(time.time() * 1000))

    time_dict['m1']= tac1 - tic1

    print (max_val)

    tic2 = int(round(time.time() * 1000))

    # Method 2: Use SQL

    dfff.registerTempTable("df_table")

    max_val = self.sqlContext.sql("SELECT MAX(A) as maxval FROM df_table").collect()[0].asDict()['maxval']

    tac2 = int(round(time.time() * 1000))

    time_dict['m2']= tac2 - tic2

    print (max_val)

    tic3 = int(round(time.time() * 1000))

    # Method 3: Use groupby()

    max_val = dfff.groupby().max('A').collect()[0].asDict()['max(A)']

    tac3 = int(round(time.time() * 1000))

    time_dict['m3']= tac3 - tic3

    print (max_val)

    tic4 = int(round(time.time() * 1000))

    # Method 4: Convert to RDD

    max_val = dfff.select("A").rdd.max()[0]

    tac4 = int(round(time.time() * 1000))

    time_dict['m4']= tac4 - tic4

    print (max_val)

    tic5 = int(round(time.time() * 1000))

    # Method 4: Convert to RDD

    max_val = dfff.agg({"A": "max"}).collect()[0][0]

    tac5 = int(round(time.time() * 1000))

    time_dict['m5']= tac5 - tic5

    print (max_val)

    print time_dict

    结果(毫秒):

    小DF(毫秒): 'm1':7096,'m2':205,'m3':165,'m4':211,'m5':180}

    更大DF(ms):{'m1':10260,'m2 ':452,'m3':465,'m4':916,'m5':373}

    展开全文
  • Python中如何求DataFrame数的日平均值? 例如求df对象中close的5日均线: 1.使用循环,采用手动计算的方式: df['close'][i-4:i+1].mean() 获取第i天的5日均线 2.对整个dataframe对象,使用rolling...

    Python中如何求DataFrame中某一列数的日平均值?

    例如求df对象中close列的5日均线:

    1.使用循环,采用手动计算的方式:

    df['close'][i-4:i+1].mean()

    获取第i天的5日均线

    2.对整个dataframe对象,使用rolling函数:

    daily['close'].rolling(5).mean()

    其中rolling[5]返回的是一个rolling对象,包含5行数据的对象,因此需要想(1)中一样使用mean,获取平均值。

    获取每一条记录的5日均值。

    展开全文
  • 情景:计算两次考试,所有学生的平均成绩: '''a.csv date,name,grade 2020-07-01,mary,70 2020-07-01,tom,80 2020-07-01,jerry,70 2020-07-02,mary,80 2020-07-02,tom,90 2020-07-02,tom,100''' grade = pd....

    情景:计算两次考试,所有学生的平均成绩:

     

    '''a.csv
    date,name,grade
    2020-07-01,mary,70
    2020-07-01,tom,80
    2020-07-01,jerry,70
    2020-07-02,mary,80
    2020-07-02,tom,90
    2020-07-02,tom,100'''
    
    grade = pd.read_csv('C:\\test\\a.csv')
    
    # average grade at 0701 and 0702
    avg = grade['grade'].groupby(grade['date']).mean()
    
    # format grade avg to 'avg: XX'
    import math
    avg_new = avg.apply(lambda x: 'avg: '+str(math.floor(x))) 
    
    # last step, change avg_new to key-value
    avg_new.to_dict()

    结果:

     

    展开全文
  • Python按求其余平均值

    千次阅读 2020-09-14 11:34:09
    根据class_type对数据进行group,分别求x, y, z的平均值 df = pd.DataFrame(data) #给df加上列名 df.columns = ['x','y','z','seg'] #要被group的列名 cols = ['x','y','z'] #根据哪个进行group gp_col = 'seg'

    数据格式:数组

    [x,y,z,class_type]

    [x,y,z,class_type]

    [x,y,z,class_type]

    [x,y,z,class_type]

    根据class_type对数据进行group,分别求x, y, z的平均值

    df = pd.DataFrame(data)
    #给df加上列名
    df.columns = ['x','y','z','seg']
    #要被group的列名
    cols = ['x','y','z']
    #根据哪个列进行group
    gp_col = 'seg'
    #df_mean中存储group后的结果 
    df_mean = df.groupby(gp_col)[cols].mean()

     

     
    展开全文
  • 我有下一个DataFrame:data=pd.read_csv('anual.csv', parse_dates='Fecha', index_col=0)dataDatetimeIndex: 290 entries, 2011-01-01 00:00:00 to 2011-12-31 00:00:00Data columns (total 12 columns):HR 2...
  • Python实现按关键字分组,并计算各平均值,并用该值填充该分类该的nan值。 DataFrame数据格式 fillna方式实现 groupby方式实现 DataFrame数据格式 以下是数据存储形式: fillna方式实现 1、按照...
  • Python实现按关键字分组,并计算各平均值,并用该值填充该分类该的nan值。 DataFrame数据格式 fillna方式实现 groupby方式实现 DataFrame数据格式以下是数据存储形式: fillna方式实现 按照...
  • 请参考以下代码'''按区间对某列做分组,然后统计各组的另一列的平均值。author: 李毅'''import numpy as npimport pandas as pddf = pd.DataFrame([[0.1, 1],[0.2, 2],[0.3, 3],[0.4, 4],[0.5, 5],[0.6, 6],], ...
  • Python实现按关键字分组,并计算各平均值,并用该值填充该分类该的nan值。DataFrame数据格式fillna方式实现groupby方式实现DataFrame数据格式以下是数据存储形式:fillna方式实现1、按照industryName1...
  • Python实现按关键字分组,并计算各平均值,并用该值填充该分类该的nan值。DataFrame数据格式fillna方式实现groupby方式实现DataFrame数据格式以下是数据存储形式:fillna方式实现1、按照industryName1...
  • Python实现按关键字分组,并计算各平均值,并用该值填充该分类该的nan值。DataFrame数据格式fillna方式实现groupby方式实现DataFrame数据格式以下是数据存储形式:fillna方式实现1、按照industryName1...
  • 这个函数的输入一般为dataframe,用于和多种函数连用,进而表示一些统计量,如果直接输出groupby的结果,输出: <pandas.core.groupby.generic.DataFrameGroupBy object at 0x0000016E4D3D4E48> 常用...
  • 请参考以下代码'''按区间对某列做分组,然后统计各组的另一列的平均值。author: 李毅'''import numpy as npimport pandas as pddf = pd.DataFrame([[0.1, 1],[0.2, 2],[0.3, 3],[0.4, 4],[0.5, 5],[0.6, 6],], ...
  • (1)查看表结构 (2)增加一 (3)查看行数 (4)删除 (5)计算平均值、最小值、最大值、标准差等 describe括号里的参数可以放具体的的名称 (6)提取想看的
  • 作为一个文科生,遗留下了这样的整理习惯。...缺失值为数值类型:用平均值取代5.缺失值为分类类型:用最常见的类别取代6.将性别映射成数值7.对Series的每一个数据都应用一个函数计算8.将Embarked从C、Q...
  • pandas练习题 part3

    2019-11-05 17:18:39
    pandas练习题 part31、检查dataframe是否有缺失值2、统计dataframe中每缺失值的数量3、dataframe用每平均值取代缺失值4、从dataframe中获取, 并返回一个dataframe5、dataframe如何改变的顺序6、设置...
  • 将下面的字典创建为DataFrame 提取含有字符串"Python"的行 ...计算某列平均值 将某列转换为list 提取popularity列最大值所在行 对某列值的大小进行排序 取出某一行 计算salary列的中位数 ...
  • pandas的一些基本功能

    2019-03-25 22:26:14
    这两天用pandas做数据分析时...2 使用groupby函数以一列为键计算另一平均值 3 使用lambda表达式执行逐元素操作 4 使用reset_index函数还原索引 5 使用head函数查看DataFrame中的前几条样本 6 使用shape属...
  • 数据分析之 Pandas

    2021-01-21 22:10:19
    以下数据均为DataFrame格式 ...4. 对某列求和 chipo['quantity'].sum() 5. 某列有多少种 6. 被下单数最多商品是什么? (分组,对每个组求和,排序) 7.收入是多少?(两列相乘) 8.每一单的平均...
  • Pandas中常用操作

    2020-12-12 16:46:24
    Pandas中常用操作1. 创建一个空的DataFrame2. txt、csv、excel、数据库 数据读取3. 数据写出。如将数据导入数据库,或导出为...如:每个大陆对饮品消耗的最小值、平均值、最大值10. 在字段中对数据进行模糊匹配,类似
  • 9.2 Pandas

    2020-06-23 09:37:19
    文章目录Pandas数据结构SeriesDataFrame查看属性 dtypes查看行标签只查看所有的(忽略行列标签)查看首尾项tail()、head()查看数据的总结(如平均数、中位数等)翻转数据排序数据根据数据进行排序 sort_values(by, ...
  • 分组函数groupby,对某列数据进行分组,返回一个Groupby对象。 在进行groupby分组后,我们可以对分组对象进行各种操作,比如求分组平均值mean() 很多时候,我们需要返回dataframe型数据进行二次操作 size()方法...

空空如也

空空如也

1 2
收藏数 32
精华内容 12
关键字:

dataframe某列平均值