草庐IT

apply_along_axis

全部标签

python - "ValueError: labels [' 时间戳 '] not contained in axis"错误

我有这段代码,我想从文件中删除“时间戳”列:u.data但不能。它显示错误“ValueError:标签['timestamp']未包含在轴中”我该如何纠正它importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltplt.rc("font",size=14)fromsklearn.linear_modelimportLinearRegressionfromsklearn.linear_modelimportRidgefromsklearn.cross_validationimportKFoldfromsklearn.cross

python - 如何从 GroupBy.apply() 中删除多索引?

基于thisquestion.df=pandas.DataFrame([[2001,"Jack",77],[2005,"Jack",44],[2001,"Jill",93]],columns=['Year','Name','Value'])YearNameValue02001Jack7712005Jack4422001Jill93ForeachuniqueName,IwouldliketokeeptherowwiththelargestYearvalue.IntheaboveexampleIwouldliketogetthetableYearNameValue02005Jack4412

python - Pandas.groupby.apply() 内存泄漏?

我目前正在将Pandas用于一个csv源文件约为600mb的项目。在分析过程中,我正在将csv读入数据框,在某些列上分组并将一个简单的函数应用于分组的数据框。我注意到我在这个过程中进入了交换内存,所以进行了一个基本测试:我首先在shell中创建了一个相当大的数据框:importpandasaspdimportnumpyasnpdf=pd.DataFrame(np.random.randn(3000000,3),index=range(3000000),columns=['a','b','c'])我定义了一个名为do_nothing()的毫无意义的函数:defdo_nothing(gro

python - 为什么 np.where 比 pd.apply 快

示例代码在这里importpandasaspdimportnumpyasnpdf=pd.DataFrame({'Customer':['Bob','Ken','Steve','Joe'],'Spending':[130,22,313,46]})#[400000rowsx4columns]df=pd.concat([df]*100000).reset_index(drop=True)In[129]:%timeitdf['Grade']=np.where(df['Spending']>100,'A','B')10loops,bestof3:21.6msperloopIn[130]:%tim

python - matplotlib 中的历史记录 : Bins are not centered and proportions not correct on the axis

看看这个例子:importmatplotlib.pyplotaspltl=[3,3,3,2,1,4,4,5,5,5,5,5,5,5,5,5]plt.hist(l,normed=True)plt.show()输出以图片形式发布。我有两个问题:a)为什么只有4和5bin以它的值为中心?其他人不应该也是这样吗?有什么技巧可以让它们居中吗?b)为什么bins没有按比例归一化?我希望所有bin的y值总和为1。请注意,我的真实示例在列表中包含更多值,但它们都是离散的。 最佳答案 您应该调整plt.hist函数的关键字参数。它们有很多,而且doc

python Pandas : applying different aggregate functions to different columns

我试图理解这个简单的SQL语句的等价物是什么:selectmykey,sum(Field1)assum_of_field1,avg(Field1)asavg_field1,min(field2)asmin_field2fromdfgroupbymykey我知道我可以将字典传递给agg()函数:f={'Field1':'sum','Field2':['max','mean'],'Field3':['min','mean','count'],'Field4':'count'}grouped=df.groupby('mykey').agg(f)但是,生成的列名称似乎由pandas自动选择:(

Python 和函数式编程 : is there an apply() function?

Scala有apply()功能。我是Python的新手,我想知道我应该如何编写以下单行代码:(part_a,part_b)=(lambdax:re.search(r"(\w+)_(\d+)",x).groups())(input_string)我会觉得像这样的东西会更好:(part_a,part_b)=input_string.apply(lambdax:re.search(r"(\w+)_(\d+)",x).groups())从FF的角度来看,我错了吗?Python中有这样的构造吗?编辑:我知道摘得不好的片段。 最佳答案 写Has

python - 为什么 df.apply(tuple) 有效但 df.apply(list) 无效?

这是一个数据框:ABC062-51252210313-5284362我可以使用df.apply从原始df中检索一个基本上是列元组的列:out=df.apply(tuple,1)print(out)0(6,2,-5)1(2,5,2)2(10,3,1)3(-5,2,8)4(3,6,2)dtype:object但是如果我想要一个值列表而不是它们的元组,我就做不到,因为它没有给我预期的结果:out=df.apply(list,1)print(out)ABC062-51252210313-5284362相反,我需要做的是:out=pd.Series(df.values.tolist())prin

python + matplotlib : how to insert more space between the axis and the tick labels in a polar chart?

我正在尝试使用matplotlib和python2.7制作极坐标图,但我正在努力研究如何增加同一轴的X轴和刻度标签之间的空间。正如您在图片上看到的,12:00和6:00的标签看起来很好,我希望所有其他标签都有相同的空间。我试过ax.xaxis.LABELPAD=10但是没有任何效果。这是我的代码(抱歉弄得一团糟......):importnumpyasnpimportmatplotlibasmplmpl.use('Agg')importmatplotlib.pyplotaspltimportmatplotlib.datesfrommatplotlib.datesimportYearLo

python - Pandas 函数 : DataFrame. apply() 运行顶行两次

这个问题在这里已经有了答案:Whydoespandasapplycalculatetwice(3个答案)关闭2年前。我有两个版本的函数使用PandasforPython2.7逐行通过inputs.csv。第一个版本在单列上使用Series.apply(),并按预期遍历每一行。第二个版本在多列上使用了DataFrame.apply(),并且出于某种原因它读取了顶行两次。然后它继续执行其余的行而不重复。知道为什么后者会读取顶行两次吗?版本#1–Series.apply()(读取顶行一次)importpandasaspddf=pd.read_csv(inputs.csv,delimiter=