【python-用熊猫将数据分组为单独的批次】教程文章相关的互联网学习教程文章

python – Pandas – 返回数据框中的第一项,按用户分组【代码】

我有很多用户/项目/时间戳数据.我想知道所有用户首先消耗了哪些项目,第二个等等. 我的问题是:如果我有一个已经按时间(降序)排序的数据帧,它是否会默认通过groupby进程排序?并且,即使用户没有消耗两个项目,我如何拉出任何用户消耗的前两个项目?import pandas as pd df = pd.DataFrame({'item_id': ['b', 'b', 'a', 'c', 'a', 'b'], 'user_id': [1,2,1,1,3,1], 'time': range(6)})print df pd.get_dummies(df['item_id'])gp = df....

python – 将累积平均函数应用于分组对象【代码】

我有一个DataFrame df,其中每条记录代表一个足球比赛.团队将不止一次出现.我需要计算每个团队得分的某种滚动平均值(好吧,不完全是字母的滚动平均值).date home away score_h score_a 166 2013-09-01 Fulham Chelsea 0 0 167 2013-09-03 Arsenal Everton 0 2 164 2013-09-05 Arsenal Swansea 5 1 165 2013-09-06 Fulham ...

Python pandas – 对字段进行分组和汇总【代码】

我最近一直在玩Panda的DataFrames,并努力分析一些多维数据. 假设我有一些数据如下:order | sample | feature1 | feature2 ------------------------------------- 1234 | A | 0.20 | 0.45 1234 | B | 0.71 | 0.08 1234 | C | 0.21 | 0.02 1234 | D | 0.87 | 0.88 5678 | A | 0.76 | 0.42 5678 | B | 0.01 | 0.03 5678 | C | 0.29 | 0.91 5678 | D |...

python – 按未排序列表中的出现顺序对列表项进行分组【代码】

测试用例:group_ordered([1,3,2,3,6,3,1]) = [1,1,3,3,3,2,6] group_ordered([1,2,3,4,5,6,1]) = [1,1,2,3,4,5,6]我已经有了一些代码,但它很丑陋并且在大型列表上也可能很慢,因为对于每个独特的项目我都在查看整个列表.我提出了这个算法,但我想知道是否有更快,更清洁或更pythonic的方式我可以做到这一点:def make_order_list(list_in):order_list = []for item in list_in:if item not in order_list:order_list.append(item)ret...

python – 在pandas中分组数据帧?【代码】

我对python pandas和使用数据帧很新.可以说我的数据框如下所示:A B C3 2 3 4 2 4 3 2 1 5 6 6我想找到数据框中有多少行在A和B列中具有相同的值,对于这些行,我想存储C值.因此,例如在此数据框中,我想存储第1和第3个C值,因为每个行中的A和B具有相同的值.基本上我想要一种打印方式:“对于A = 3且B = 2,可能的C值为:3,1”并找到这些对.我遵循官方的熊猫文档,但我似乎无法找到这个.解决方法:不确定我是否遵循,但这可能会让你去:df =...

python – Pandas:根据条件计数进行分组【代码】

我试图在Pandas(Python2.7)中对数据帧进行分组,具体取决于每次不满足条件时重置的渐进计数.看起来像:date condition count 01,01,2018 08:00 A 1 01,01,2018 08:01 A 2 01,01,2018 08:03 A 3 01,01,2018 08:04 B 1 01,01,2018 08:07 B 2 01,01,2018 08:10 ...

如何通过多级行对python数据框进行分组?【代码】

我有以下多级数据框:Year 2016 2017 Quarter 3 4 1 2 Month Sep Oct Nov Dec Jan Feb Mar Apr May Jun A 0.16 0.95 0.92 0.45 0.30 0.35 0.95 0.88 0.18 0.10 B 0.88 0.67 0.07 0.70 0.74 0.33 0.77 0.21 0.81 0.85 C 0.79 0.56 0.13 0.19 0.94 0.23 0.72 0.62 0.66 0.93我想总结...

python – 没有聚合函数的分组【代码】

我见过像这样的pandasql查询:df = pd.DataFrame({'A': [1, 2, 2], 'B': [3, 4, 5]}) sqldf('select * from df group by A', locals())这给出了:A B 0 1 3 1 2 6我觉得如果没有聚合函数就有一个组很奇怪,但是有人能告诉我在聚合列上使用了哪个函数来将多个值减少为一个吗?解决方法:看起来你要查找的groupby方法是last():df = pd.DataFrame({'A': [1, 2, 2], 'B': [3, 4, 5]}) df.groupby('A', as_index=False).last()输出:...

python – 分组并查找组的总和,但返回NaN为NaN,而不是0【代码】

我有一个数据框,每个唯一的组有4行.所以我需要按列进行分组,使它们成为唯一的,并进行一些聚合,例如max,min,sum和average.但问题是我为某些组提供了所有NaN值(在某些列中)并返回0.是否有可能返回NaN?例如:DFtime id el conn column1 column2 column3 2018-02-11 14:00:00 1 a 12 8 5 NaN 2018-02-11 14:00:00 1 a 12 1 NaN NaN 2018-02-1...

如何在Python中对Levenshtein距离超过80%的单词进行分组【代码】

假设我有一个清单: – person_name = ['zakesh', 'oldman LLC', 'bikash', 'goldman LLC', 'zikash','rakesh']我试图以这种方式对列表进行分组,以便两个字符串之间的Levenshtein distance最大.为了找出两个单词之间的比例,我使用的是python包fuzzywuzzy. 例子 :->>> from fuzzywuzzy import fuzz >>> combined_list = ['rakesh', 'zakesh', 'bikash', 'zikash', 'goldman LLC', 'oldman LLC'] >>> fuzz.ratio('goldman LLC', 'ol...

python – Spark中的分组线性回归【代码】

我在PySpark工作,我想找到一种方法对数据组进行线性回归.具体给出了这个数据帧import pandas as pd pdf = pd.DataFrame({'group_id':[1,1,1,2,2,2,3,3,3,3],'x':[0,1,2,0,1,5,2,3,4,5],'y':[2,1,0,0,0.5,2.5,3,4,5,6]}) df = sqlContext.createDataFrame(pdf)df.show() # +--------+-+---+ # |group_id|x| y| # +--------+-+---+ # | 1|0|2.0| # | 1|1|1.0| # | 1|2|0.0| # | 2|0|0.0| # | 2|1|0.5...

Python pandas库 ->groupby分组操作【代码】【图】

首先 在SQL中 分组操作group by是对行记录的拆分 在pandas中 分组操作groupby可以选择对行或者列进行拆分 pandas分组之后可以根据每组的组名value(非列名)访问部分数据 类似于SQL中 group by之后的having 分组列名=value 最后都是用聚合方法 合并计算数据 1 import numpy as np2 import pandas as pd3 from pandas import DataFrame,Series4 df1=DataFrame({symbol:[001,001,002,002,003],5 tdate:[201901,201902,201901,201902,20...

Python 代码实现分组,将 [1,2,3,...100]变成 [[1,2,3],[4,5,6]....]

a = [x for x in range(1, 101)] b = [a[x:x+3] for x in range(0, 100, 3)] print(b)

python正则表达式--分组、后向引用、前(后)向断言【图】

无名、有名分组(1)正则表达式—无名分组从正则表 达式的左边开始看,看到的第一个左括号“(”表示表示第一个分组,第二个表示第二个分组, 依次类推。需要注意的是,有一个隐含的全局分组(就是索引号为0的分组),就是整个正则 表达式匹配的结果(2)正则表达式—有名分组命名分组就是给具体有默认分组编号的组另外再起一个别名,方便以后的引用。 命令分组的语法格式如下: (?P正则表达式)语法格式中的字符P必须是大写的“P”,nam...

python 列表分组方法【代码】

def page(li, num):""":param li: 需要分页的列表:param num: 每一页页码数量:return: 分页后列表需要导入math模块"""zu = math.ceil(len(li)/num)new_list = []n = 0while True:if n == (zu - 1):new_list.append(li3[n:])breakpage = li3[n:(n + num)]del li3[0:(num-1)]new_list.append(page)n += 1return new_listlist = [1,2,3,3,3,4,5,5,3,4,3,1,2,4,5,6,78,5,67,8,6,5,4,3,2,5,7,9,2,4] new_list = page(list, 7) print(ne...

分组 - 相关标签