小编MrT*_*MrT的帖子

在groupby上设置应用结果的列名

这是一个相当微不足道的问题,但它触发了我的强迫症,而我在过去的半小时内未能找到合适的解决方案.

对于背景,我希望为DataFrame中的每个组计算一个值(我们称之为F),该值来自现有DataFrame中不同的聚合度量列.

这是我正在尝试做的一个玩具示例:

import pandas as pd
import numpy as np

df = pd.DataFrame({'A': ['X', 'Y', 'X', 'Y', 'Y', 'Y', 'Y', 'X', 'Y', 'X'],
                'B': ['N', 'N', 'N', 'M', 'N', 'M', 'M', 'N', 'M', 'N'],
                'C': [69, 83, 28, 25, 11, 31, 14, 37, 14,  0],
                'D': [ 0.3,  0.1,  0.1,  0.8,  0.8,  0. ,  0.8,  0.8,  0.1,  0.8],
                'E': [11, 11, 12, 11, 11, 12, 12, 11, 12, 12]
                })

df_grp = df.groupby(['A','B'])
df_grp.apply(lambda x: x['C'].sum() * …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

foreach()垃圾收集

我正在使用doSMP包中的嵌套foreach来根据我开发的函数生成结果.通常问题是使用三个嵌套循环,但是由于生成结果的大小(每个i大约80,000),当最终结果矩阵超过指定行数时,我不得不暂停编译并将结果写入文件.

i = 1
write.off = 1

while(i <= length(i.vector)){
        results.frame = as.data.frame(matrix(NA, ncol = 3, nrow = 1))

        while(nrow(results.frame) < 500000 & i <= length(i.vector)){
                results = foreach(j = 1:length(j.vector), .combine = "rbind", .inorder = TRUE) %:%
                foreach(k = 1:length(k.vector), .combine = "rbind", .inorder = TRUE) %dopar%{

                        ith.value = i.vector[i]
                        jth.value = j.vector[j]
                        kth.value = k.vector[k]
                        my.function(ith.value, jth.value, kth.value)
                }

                results.frame = rbind(results.frame, results)
                i = i + 1
        }

        results.frame = results.frame[-1,]
        write.table(results.frame, paste("part_",write.off, sep = ""))
        write.off …
Run Code Online (Sandbox Code Playgroud)

parallel-processing garbage-collection r

6
推荐指数
1
解决办法
1609
查看次数

Zoo包编译错误

我正在运行RStudio Server,无法安装该zoo软件包.我得到的错误消息如下:

安装包(S)到一个'/ home/tsajid/R /库'试图URL(如'LIB'是不确定的)' http://mirrors.nics.utk.edu/cran/src/contrib/zoo_1.7-9 .tar.gz '内容类型'应用程序/ x-gzip'长度807084字节(788 Kb)打开URL =========================== =======================已下载788 Kb

**安装包'zoo'...
**包'zoo'成功解压缩并检查MD5总和
**libs sh:make:命令未找到错误:包'zoo'编译失败
**删除'/ home/tsajid/R/library/zoo'install.packages中的警告:
'zoo'包的安装具有非零退出状态

下载的源包位于'/ tmp/RtmpsKlJWz/downloaded_pa​​ckages'中

我尝试安装包存档文件,但我收到相同的错误消息.

会话信息:

R version 2.15.1 (2012-06-22)
Platform: x86_64-redhat-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=C                 LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] svMisc_0.9-65

loaded via a namespace (and not attached):
[1] tools_2.15.1
Run Code Online (Sandbox Code Playgroud)

r zoo

2
推荐指数
1
解决办法
1199
查看次数

刮刮Javascript生成的数据

我正在与世界银行分析他们的采购流程开展一个项目.

世界银行为每个项目维护网站,包含相关合同的链接和数据(示例).合同相关数据可在采购选项卡下找到.

我希望能够从该站点提取项目的合同信息,但链接和相关数据是使用嵌入式Javascript生成的,显示合同授予和其他数据的页面的URL似乎不遵循可辨别的模式(例子).

有没有办法可以通过R抓第一个例子中的浏览器渲染数据?

r scrape

0
推荐指数
1
解决办法
4623
查看次数