【发布时间】:2021-10-04 22:25:51
【问题描述】:
所以我的问题是,我创建了带有列 ('Interval_range') 的 DF,它从其他两列 ('Start_interval 和 'End_interval') 压缩值并创建第三列 (Interval_range'),该类型是列表.现在,我想创建第四个('Absolute_frequency'),它计算外部列表('dataset')中的所有值,这些值大于'Interval_range'列的第一个参数,小于'Interval_range'的第二个参数' 柱子。我怎样才能做到这一点?我试图使用 .apply() 然后 filter() 但最后我什么也没得到。这是我所有的代码:
dataset= [8,30,30,50,86,94,102,110,169,170,176,236,240,241,242,255,262,276,279,282]
interval = (max(dataset)-min(dataset))/6
int1 = [round(min(dataset),2),round(min(dataset)+interval,2)]
int2= [round(int1[1],2),round(int1[1]+interval,2)]
int3 =[round(int2[1],2),round(int2[1]+interval,2)]
int4 =[round(int3[1],2),round(int3[1]+interval,2)]
int5 =[round(int4[1],2),round(int4[1]+interval,2)]
int6 =[round(int5[1],2),round(max(dataset),2)]
intervals = [int1,int2,int3,int4,int5,int6]
analiza = pd.DataFrame(intervals,index='A B C D E F'.split(),columns='Start_interval End_interval'.split())
analiza['Interval_range'] = list(zip(analiza['Start_interval'],analiza['End_interval']))
【问题讨论】:
标签: python pandas dataframe filter apply