【问题标题】:Creating intervals in python在python中创建间隔
【发布时间】:2018-10-08 05:36:45
【问题描述】:

列表项

我是编程新手,所以不太了解。

我有一个这样的数据集:-

Type    Value

A        40

A        70     

A        125

A        150

B        50

B        80

B        130

B        150

我想要这种格式:

Type  <60  >60  >90  >120

A      1    3    2    2

B      1    3    2    2

基本上,对值进行计数和分类。

def delay_tag(list_name):
    empty_list = []
    for i in range(0, len(airline)): 
        if list_name[i] < 60:
             empty_list.append('<60') 
        elif (list_name[i] > 60):
            empty_list.append('>60') 
        elif (list_name[i] >= 120):
            empty_list.append('>120')
        else:
             empty_list.append('>= 180')
        return(empty_list)

这就是我尝试过的

【问题讨论】:

  • 只有一种方法可以不再是编程新手:那就是实际编程自己。
  • 我知道,我一直在编程,但我不知道怎么做这一步。
  • 如果您不知道,请阅读教程,如果您已经诚实尝试,请展示您的代码。
  • def delay_tag(list_name): empty_list= [] for i in range(0,len(airline)): if list_name[i] 60): empty_list.append('>60') elif (list_name[i] >= 120): empty_list.append('>120') else: empty_list.append('>= 180') 返回(empty_list)
  • 请编辑您的帖子并格式化您的代码,而不是将其塞进无法阅读的评论中...

标签: python python-3.x categorical-data


【解决方案1】:

这可能会给你一个想法。

import pandas as pd

df = pd.DataFrame({
        'Type':['A','A','A','A','B','B','B','B'],
        'Value':[40,70,125,150,50,80,130,150]
    })
df_lt60 = df[df['Value']<60]
print df_lt60.groupby('Type').Value.nunique()

df_gt60 = df[df['Value']>=60]
print df_gt60.groupby('Type').Value.nunique()

【讨论】:

    【解决方案2】:
    import pandas as pd
    
    df = pd.read.csv('your_file.csv')
    
    fun = lambda x:{'<60':x.lt(60).sum(),'>60':x.gt(60).sum(),'>90':x.gt(90).sum(),'>120':x.gt(120).sum()}
    
    pd.DataFrame(df.groupby('Type').Value.apply(fun)).reset_index().pivot('Type','level_1','Value')
    
    Out[76]: 
    level_1  <60  >120  >60  >90
    Type                        
    A          1     2    3    2
    B          1     2    3    2
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-21
      • 2020-07-03
      • 2017-04-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多