小编pms*_*pms的帖子

R:将列表打印到文本文件

我在R中有这样一个列表:

> print(head(mylist,2))
[[1]]
[1] 234984  10354  41175 932711 426928

[[2]]
[1] 1693237   13462
Run Code Online (Sandbox Code Playgroud)

列表的每个元素都有不同数量的元素.

我想将此列表打印到这样的文本文件:

mylist.txt
234984  10354  41175 932711 426928
1693237   13462
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用sink(),但它打印元素[[x]],[y]的名称,我想避免它.此外,由于列表的每个元素中的元素数量不同,因此无法使用write()或write.table().

r list

43
推荐指数
5
解决办法
9万
查看次数

将具有可变列数的文本文件读取到列表中

我有这样一个文件:

mylist.txt
234984  10354  41175 932711 426928
1693237   13462
Run Code Online (Sandbox Code Playgroud)

该文件的每一行都有不同数量的元素,每行至少有1个元素.我想把它读成这样的列表:

> print(head(mylist,2))
[[1]]
[1] 234984  10354  41175 932711 426928

[[2]]
[1] 1693237   13462
Run Code Online (Sandbox Code Playgroud)

r file list

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

复制粘贴到Python交互式解释器和缩进

这段代码,test.py:

if 1:
   print "foo"
print "bar"
Run Code Online (Sandbox Code Playgroud)

可以使用execfile("test.py")或成功执行python test.py,但是当一个人尝试将其复制粘贴到python解释器中时:

File "<stdin>", line 3
print "bar"
        ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

为什么会这样?可以通过配置解释器以便成功读取复制粘贴的文本吗?我想这可能会影响口译员的输入,但这对我来说没问题.

python copy-paste indentation

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

可以为嵌套的私有类重载operator <<吗?

如何为一个像这样的嵌套私有类重载一个operator <<?

class outer {
  private:
    class nested {
       friend ostream& operator<<(ostream& os, const nested& a);
    };
  // ...
};
Run Code Online (Sandbox Code Playgroud)

在外部类编译器之外尝试抱怨隐私时:

error: ‘class outer::nested’ is private
Run Code Online (Sandbox Code Playgroud)

c++ nested operator-overloading nested-class

10
推荐指数
2
解决办法
3841
查看次数

Groupby给出所选DataFrame列的值的百分位数

想象一下,我有一个DataFrame只包含实际值的列.

>> df        
          col1   col2      col3  
0     0.907609     82  4.207991 
1     3.743659   1523  6.488842 
2     2.358696    324  5.092592  
3     0.006793      0  0.000000  
4    19.319746  11969  7.405685 
Run Code Online (Sandbox Code Playgroud)

我想按所选列(例如,col1)的四分位数(或我指定的任何其他百分位数)对其进行分组,以对这些组执行某些操作.理想情况下,我想做的事情如下:

df.groupy( quartiles_of_col1 ).mean()  # not working, how to code quartiles_of_col1?
Run Code Online (Sandbox Code Playgroud)

输出应该给出对应于四分位数的四个组的每个列的平均值col1.这可能与groupby命令有关吗?实现它的最简单方法是什么?

python group-by pandas

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

R:快速乘以data.frame(或其他数据结构)中的选定行

我有一个像data.frame这样的类型的对象,但更大:

> head(mydf)  
   id1     id2   n  
1    0 1032142   3  
2    0 1072163   1  
3    0  119323   2  
Run Code Online (Sandbox Code Playgroud)

我需要打印到文件列a1a1,他们每个人的n时间.这样我就可以获得这样的文件:

0 1032142  
0 1032142  
0 1032142  
0 1072163  
0  119323  
0  119323  
Run Code Online (Sandbox Code Playgroud)

我尝试了以下解决方案,但他们使用显式for循环并且速度非常慢(用我的数据完成它们需要几天时间):

for (j in 1:(nrow(mydf))) for (i in 1:(mydf[j,"n"])) write.table( mydf[j,c("id1","id2")], file="trials", append=T, row.names= F, col.names=F )
Run Code Online (Sandbox Code Playgroud)

另一个尝试使用乘法行构建一个新的data.frame,但运行速度更慢.

towrite=data.frame(); for (j in 1:(nrow(mydf))) for (i in 1:(mydf[j,"n"])) towrite=rbind(towrite,mydf[j,c("id1","id2")])
Run Code Online (Sandbox Code Playgroud)

在R下解决这个问题的最简单,最快捷的方法是什么?

r dataframe

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

两个相同的unordered_maps的顺序是否相同?

换句话说,如果我填充两个unordered_map或者unordered_set具有完全相同内容和相同散列函数的对象,那么迭代它们会给出相同的键/值对序列吗?

如果是这样,那么它的条件是什么(例如相同的散列函数,相同的键,不一定是相同的值).

c c++ unordered-map unordered-set c++11

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

将每个元素与对象的每个其他元素组合在一起(交叉产品)

我有一个整数两个向量,说v1=c(1,2)v2=c(3,4),我想结合,并获得这个结果(作为data.frame,或矩阵):

> combine(v1,v2) <--- doesn't exist
1 3
1 4
2 3
2 4
Run Code Online (Sandbox Code Playgroud)

这是一个基本案例.更复杂一点 - 将每一行与每一行结合起来?例如,假设我们有两个data.frames或矩阵d1和d2,我们想要将它们组合起来以获得以下结果:

d1
1 13
2 11

d2
3 12
4 10

> combine(d1,d2) <--- doesn't exist
1 13 3 12
1 13 4 10
2 11 3 12
2 11 4 10
Run Code Online (Sandbox Code Playgroud)

我怎么能实现这个目标?

r cross-product

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

对布尔变量的操作

在这个问题中,已经展示了如何在bash中使用整齐的布尔变量.有没有办法用这些变量执行逻辑运算?例如,如何得到这个:

var1=true
var2=false
# ...do something interesting...
if ! $var1 -a $var2; then     <--- doesn't work correctly
   echo "do sth"
fi
Run Code Online (Sandbox Code Playgroud)

bash shell boolean sh

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

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