小编Tah*_*sha的帖子

如何在emacs中获取顶部和底部边距

使用 emacs 时如何获得顶部和底部边距(如左右边缘)?我发现当我编写或审阅大块文本时,让文本从屏幕顶部开始有点不舒服。

emacs user-interface

5
推荐指数
1
解决办法
2030
查看次数

自定义使用field.custom.widget创建的表单字段的大小

替代文字

我使用以下代码在附加图像中生成表单.是否可以更改表单中字段的大小.我想减小估计时间的输入字段的大小和它右侧的保管箱字段

{{=form.custom.begin}}
<table>

<table><tr>
<td><b>Type :</b></td><td><div>{{=form.custom.widget.type}}</div></td>
</tr><tr>
<td><b>Title :</b></td><td><div>{{=form.custom.widget.title}}</div></td>
</tr><tr>
<td><b>Description :</b></td><td><div>{{=form.custom.widget.description}}</div></td>
</tr><tr>
<td><b>Estimated Time :</b></td><div'><td>{{=form.custom.widget.estimated_time}}{{=form.custom.widget.estimated_time_unit}}</td> </div>
</tr>
<tr>
<td></td><td><div align='center'>{{=form.custom.submit}}</div></td>
</tr>
</table>

{{=form.custom.end}}
Run Code Online (Sandbox Code Playgroud)

forms web2py

4
推荐指数
1
解决办法
3038
查看次数

Emacs 24 Ubuntu菜单面板

刚刚在ubuntu精确操作系统上安装了Emacs 24.顶部面板中的菜单栏缺少许多选项(例如,使用Auctex,所有Latex选项).

我记得在网上看到有可能将菜单放在Emacs框架的顶部,而不是顶部面板的统一默认值.关于如何在ubuntu中启用全局菜单栏,SO上有一个答案.有人可以指点我如何在全局菜单中禁用它,直到它们达到他们一起玩的程度.

谢谢

emacs menubar ubuntu-12.04

4
推荐指数
1
解决办法
3287
查看次数

向ggplot添加英镑符号

同样,这可能真的很明显,但是我如何在ggplot中添加英镑符号?

我一直在尝试

ylab(expression(symbol('\U00a3')))
Run Code Online (Sandbox Code Playgroud)

在例如

library(ggplot2)
qplot(1:10,1:10,geom='line')+ylab(expression(symbol('\U00a3')))
Run Code Online (Sandbox Code Playgroud)

但我得到了一个罗马字母R。

symbols r ggplot2

4
推荐指数
1
解决办法
267
查看次数

python dict理解有两个范围

我正在尝试生成一些代码,例如:

{1:7,2:8,3:9,4:10}

{i:j for i in range(1,5) for j in range(7,11)}

产生

{1: 10, 2: 10, 3: 10, 4: 10}

我该怎么解决?

谢谢

python dictionary list-comprehension

4
推荐指数
1
解决办法
132
查看次数

无法将 R 日期序数准确转换为 Python

从这里的问题开始:

我正在尝试使用 Rpy2 手动创建该系列

import rpy2.robjects as ro
from rpy2.robjects.packages import importr
import pandas.rpy.common as com

pa = importr("pa")

ro.r("data(jan)")
jan = com.load_data('jan')

jan_r  = com.convert_to_r_dataframe(jan)

name = ro.StrVector([str(i) for i in jan['name']])
sector = ro.StrVector([str(i) for i in jan['sector']])
date = ro.StrVector([str(i) for i in jan['date']])
Run Code Online (Sandbox Code Playgroud)

14610在日期字段中得到了代表2010-01-01我怀疑是1970-01-01来源的日期编号。我在模块中找不到任何datetime允许我更改日期来源的内容,所以我不知道如何重置它。

我的问题:

  1. 是 R 来源日期的原点吗1970-01-01
  2. 有没有办法datetime.datetime在 python 中设置原点并隐藏到对象?
  3. 我在这里错过了一些更明显的东西吗?

谢谢

python datetime r rpy2

4
推荐指数
1
解决办法
1286
查看次数

尝试将多个函数聚合到新列时意外的KeyError Pandas

我看了下面的问题:

将多个函数应用于多个groupby列

我有数据

                    p.date p.instrument                p.sector  \
11372  2013-02-15 00:00:00            A             Health Care   
11373  2013-02-15 00:00:00           AA               Materials   
11374  2013-02-15 00:00:00         AAPL  Information Technology   
11375  2013-02-15 00:00:00         ABBV             Health Care   
11376  2013-02-15 00:00:00          ABC             Health Care   

                                p.industry    p.retn  p.pfwt     b.bwt  
11372     Health Care Equipment & Services -5.232929     NaN  0.000832  
11373                             Aluminum  0.328947     NaN  0.000907  
11374                    Computer Hardware -1.373927     NaN  0.031137  
11375                      Pharmaceuticals  2.756020     NaN  0.004738  
11376  Health Care Distribution & Services -0.371179     NaN  0.000859 
Run Code Online (Sandbox Code Playgroud)

但是当我尝试:

test1.groupby("p.sector").agg({'r1': lambda x: x['p.pfwt'].sum()})
Run Code Online (Sandbox Code Playgroud)

我收到了错误 …

python dictionary aggregate dataframe pandas

4
推荐指数
1
解决办法
3234
查看次数

R data.table设置值

我正在尝试使用以下代码设置以下data.tables px&vol.(回到缓慢的循环)

a=data.table(
  date_id = rep(seq(as.Date('2013-01-01'),as.Date('2013-04-10'),'days'),5),
  px =rnorm(500,mean=50,sd=5),
  vol=rnorm(500,mean=500000,sd=150000),
  id=rep(letters[1:5],each=100)
  )

b=data.table(
  date_id=rep(seq(as.Date('2013-01-01'),length.out=600,by='days'),5),
  id=rep(letters[1:5],each=600),
  px=NA_real_,
  vol=NA_real_
  )

setkeyv(a,c('date_id','id'))
setkeyv(b,c('date_id','id'))
Run Code Online (Sandbox Code Playgroud)

并且以下方法不起作用.

s = a[1,id]
d = a[1,date_id]
b[id == s & date_id == d, list(names(b)[3:4])] <- a[id == s & date_id ==d, list(names(a)[2:3])]
Run Code Online (Sandbox Code Playgroud)

它失败并带有以下代码

Error in `[<-.data.table`(`*tmp*`, id == s & date_id == d, list(names(b)[3:4]),  : 
  j must be atomic vector, see ?is.atomic
Run Code Online (Sandbox Code Playgroud)

我做错了什么以及如何将这些值从一个data.table设置为另一个元素.实际的表有很多列,所以手写它们不是我的选择.

谢谢

r data.table

3
推荐指数
1
解决办法
3427
查看次数

R ggplot2为只有少量数据点的折线图引入了轻微平滑

不确定这是否是一个编程问题......

如果我有下面的数据,它产生一个'尖尖'图表,并且我想用ggplot2产生一个稍微平滑的数据,我该如何最优雅地去做.通常的平滑方法会删除太多信息.我正在考虑的一种方法是在当前集合之间插入额外的两个数据点,然后采用2个周期移动平均值等.这似乎是手动编码的艰苦工作,所以我会采取一种优雅自动化的答案作为最后的手段.

a=data.frame(year=paste('FY',2001:2012,sep='.'),values=rnorm(12))
library(ggplot2)
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,这是尖刻的,视觉上没有吸引力

ggplot(a,aes(x=year,y=values,group=1))+geom_line() 
Run Code Online (Sandbox Code Playgroud)

这会从图表中删除太多信息

ggplot(a,aes(x=year,y=values,group=1))+stat_smooth(se=F) 
Run Code Online (Sandbox Code Playgroud)

谢谢

r ggplot2

3
推荐指数
2
解决办法
2万
查看次数

熊猫多指标切分下级水平的最佳方法

关于熊猫数据框多索引,我有两个问题。

假设我有一个数据帧df,如下所示:

                                   data
    port                           bm  pf
    sector instrument date
    1      A          2013-01-14    0   0
                      2013-01-15    5   5
                      2013-01-16   10  10
                      2013-01-17   15  15
                      2013-01-18   20  20
Run Code Online (Sandbox Code Playgroud)

可以使用以下代码生成:

import pandas as pd
date = pd.bdate_range('2013-01-14','2013-01-20').repeat(5)
sector = [1,1,1,2,2] * 5
df = pd.DataFrame(dict(port=['pf']*25,sector=sector,instrument=list('ABCDE')*5,date=date,data=xrange(25)))
df = pd.concat([df,pd.DataFrame(dict(port=['bm']*25,sector=sector,instrument=list('ABCDE')*5,date=date,data=xrange(25)))],axis=0)
df = df.set_index(['port','sector','instrument','date'])
df = df.unstack('port')
Run Code Online (Sandbox Code Playgroud)

我想得到两组结果:2013-01-17上的所有值以及2013-01-17到系列末尾的所有值。

对于第一个我知道我可以使用以下方法之一:

idx = pd.IndexSlice
targetdate = pd.Timestamp('2013-01-17')
slicer = (slice(None),slice(None),targetdate)
Run Code Online (Sandbox Code Playgroud)

1) df.loc[slicer,:]

2) df.xs(pd.Timestamp('2013-01-17'),level=2)

3) df.xs(slicer,)

4) df[idx[:,:,targetdate],:]

所有这些看起来都很笨拙。还有其他更明显的方法吗?还有什么其他方法可以实现这一目标。我想我希望有类似的东西df.loc(level=2)[targetdate](当然不起作用)。

第二,我只想出一种解决方案

query = df.index.get_level_values(2) >= pd.Timestamp('2013-01-17')
df[query] …
Run Code Online (Sandbox Code Playgroud)

python multi-index pandas

3
推荐指数
1
解决办法
1006
查看次数