小编use*_*976的帖子

提取列标题

我有以下数据框(数据),我想从中提取并打印列标题,其中有一个非零元素:

  M1 M2 M3 M4
2  0  1  0 1
5  1 -1  0 0
7  0  1  1 0
Run Code Online (Sandbox Code Playgroud)

所需输出:

2: M2 M4
5: M1 M2
7: M2 M3 
Run Code Online (Sandbox Code Playgroud)

到目前为止我的R代码不起作用:

colnames(data)[which(data[2] !=0),]
Run Code Online (Sandbox Code Playgroud)

帮助将不胜感激.谢谢

statistics r

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

在多个向量上调用setdiff()

我如何在R中使用setdiff()来获取一个向量而不是其他向量中的元素我的示例如下:

dat1 <- c("osa", "bli", "usd", "mnl")
dat2 <- c("mnu", "erd", "usd", "mnl")
dat3 <- c("ssu", "erd", "usd", "mnl")
Run Code Online (Sandbox Code Playgroud)

以下代码仅返回dat1与dat2和dat3相比的不同之处:

diffs <- Reduce(setdiff, 
        list(A = dat1,
             B = dat2,
             C = dat3
)
Run Code Online (Sandbox Code Playgroud)

如何修改此代码以便能够获取向量中唯一存在的所有元素与另一个相比?谢谢

r

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

使用pandas按日期对数据进行分组

如何使用pandas按月将以下数据分组:

17/1/2001   800
7/1/2001    1300
2/1/2001    400
1/1/2001    200
25/3/2001   1800
8/3/2001    1300
Run Code Online (Sandbox Code Playgroud)

然后在月份的第一天和最后一天以及相应的第一个和最后一个值具有以下输出:

First   Last    First   Last
1/1/2001 17/1/2001  200 800
8/3/2001 25/3/2001  1300 1800
Run Code Online (Sandbox Code Playgroud)

谢谢

python dataframe python-2.7 pandas

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

使用 python 根据索引和非索引列对表值进行排序

如何根据索引和非索引列对数据框中的值进行排序?

数据框:

ID  Colour  A   B   C
45356   Green   1   34  4
34455   Yellow  23  0   1
53443   Brown   3   4   3
45555   Green   5   5   2
Run Code Online (Sandbox Code Playgroud)

表有两个索引列(ID 和颜色)。我想根据 ID(升序)、A(降序)和 C(升序)对表进行排序。

所需的输出是:

ID  Colour  A   B   C
34455   Yellow  23  0   1
45356   Green   1   34  4
45555   Green   5   5   2
53443   Brown   3   4   3
Run Code Online (Sandbox Code Playgroud)

我已经尝试过这个:

df.set_index(inplace=True)
df.sort_values(['ID', 'A', 'C'], ascending=['True','False','True'])
Run Code Online (Sandbox Code Playgroud)

这不起作用作为“ID”,因为无法识别列。

python pandas

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

使用R将多行文本写入一个文件

我正在使用write()以这种方式将多行写入同一文件:

filename='out.txt'

write(c("\n\n","No of blues =", nrow(data1)), file=filename,append=FALSE)
write(c("\n\n","No of greens =", nrow(data2)), file=filename,append=Append)
write(c("\n\n","No of reds =", nrow(data3)), file=filename,append=Append)
Run Code Online (Sandbox Code Playgroud)

data1,data2和data3是变量名.

但是我遇到了以下错误:

Error in cat(list(...), file, sep, fill, labels, append) : 
 argument 1 (type 'list') cannot be handled by 'cat'
Run Code Online (Sandbox Code Playgroud)

对于这个问题,R有解决方案吗?

r

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

标签 统计

r ×3

pandas ×2

python ×2

dataframe ×1

python-2.7 ×1

statistics ×1