I am trying to store two numerical arrays in an unusal form, e.g. c('[1;2;3]','[4;5;6]','[24;25;26]')
I need them in a CSV in single cells, like here

So far I tried this:
DF
ID time Y
1 3 23
1 4 24
1 5 20
2 2 12
2 8 15
3 2 19
3 3 23
3 5 21
3 6 32
timeList = list()
yList = list()
for (i in 1:3) {
timeList[i] = DF$time
yList[i] = DF$Y
}
longTimeList …Run Code Online (Sandbox Code Playgroud) 我正在处理一个横截面数据集,它看起来像:
Id Year Age
1 2003 20
1 2003 20
1 2003 20
2 2003 35
2 2003 37
2 2003 42
3 2003 55
3 2003 55
3 2003 55
Run Code Online (Sandbox Code Playgroud)
为了减少我的样本中由于 Id 分配错误而导致的测量错误,我只需要保留具有相同年龄的个体,如果没有出现这种情况就会下降。
我正在寻找的输出是:
Id Year Age
1 2003 20
1 2003 20
1 2003 20
3 2003 55
3 2003 55
3 2003 55
Run Code Online (Sandbox Code Playgroud)
你有什么建议吗?
假设,我有一个列表:
l = list(c("a", "b", "c"), c("d", "e", "f"))
[[1]]
[1] "a" "b" "c"
[[2]]
[1] "d" "e" "f"
Run Code Online (Sandbox Code Playgroud)
我想得到一个向量。
"ad" "be" "cf"
Run Code Online (Sandbox Code Playgroud)
我可以将列表转换为矩阵,例如,sapply(l, c),然后连接列,但也许有更简单的方法。
我目前有一个数据集,其中的所有信息都在一行(或一列,如果我转置)中。数据中的第一项实际上是列名:
Country | Population | Country Column One | Country Column 2 | USA | 400 million | USA Column 1 | USA Column 2 | Canada | 38 Million | Canada Column 1 | Canada Column 2 | etc..
Run Code Online (Sandbox Code Playgroud)
我注意到,一旦到达新的国家/地区,我就可以“换行”并让所有内容从新行开始。我该怎么办呢?有更有效的方法吗?
因为一张桌子胜过一千个字,所以我想做的是:
| A栏 | B栏 | C栏 | D 栏 |
|---|---|---|---|
| 艾米 | 1.5 | x1 | y1 |
| STR | 2 | x2 | y2 |
| 艾米 | 4.5 | x2 | y3 |
| STR | 3 | x3 | y4 |
我想根据 A 列的值将 B 列中的所有数据重新组合到一个列中。A 列的每个值形成一个列名称。这是在一个新的数据框中。
| 艾米 | STR |
|---|---|
| 1.5 | 2 |
| 4.5 | 3 |
多谢 !
我尝试使用gather()和unite()来实现它,但它没有给我预期的结果。
我必须列出如下 2 个列表:
List1 <- c("X", "Y","Z")
List2 <- c("Enable", "Status", "Quality")
Run Code Online (Sandbox Code Playgroud)
我期待这样的事情:
X_Enable, X_Status,X_Quality,Y_Enable, Y_Status,Y_Quality, Z_Enable, Z_Status,Z_Quality.
Run Code Online (Sandbox Code Playgroud)
任何建议都会对我有帮助。谢谢
我想铺一张桌子。附上一张图片。我正在尝试使用 Tidyverse 进行传播。
我的尝试是:
Want = Have |> spread(key = Group, value = Number)
Run Code Online (Sandbox Code Playgroud)
结果很差,每次只能保留 2 行。替换密钥或尝试多个值不起作用或以错误结束。它必须很简单,如何才能做到呢?
有列表ori_list,如何组合子数据框cat_a|cat_btocat和item_a|item_bto item?(结果与 new_list 相同)
cat_a <- data.frame(name=c('A','B','C'),amount=c(1,2,3))
cat_b <- data.frame(name=c('w','B','C'),amount=c(4,2,3))
item_a <- data.frame(name=c('z','o','C'),amount=c(3,4,1))
item_b <- data.frame(name=c('n','B','C'),amount=c(6,6,3))
files <- ls(pattern = 'cat|item') %>% purrr::set_names()
ori_list <- list(mget(files))
new_list <- list(cat= data.frame(name = c('A','B','C','w','B','C'),
amount = c(1,2,3,4,2,3)),
item = data.frame(name=c('z','o','C','n','B','C'),
amount=c(3,4,1,6,6,3)))
Run Code Online (Sandbox Code Playgroud) 我有一个列表,我想删除具有奇数长度的元素:
my_list <- list()
my_list$a <- c(1,2,3,4) #length 4
my_list$b <- c(1,2,3) # length 3
my_list$c <- c(5,6,7,8,6,7) #length 6
Run Code Online (Sandbox Code Playgroud)
所以在上面的例子中,我想删除, my_list$b 因为它的长度是3,而3是奇数。
有什么建议么?
我正在使用 R 编程语言。
我有下面的“树”,它描述了抛硬币游戏的结果(从 5 点开始,每轮有 0.5 个 +1 的概率和 0.5 个 -1 的概率):
outcomes <- c(-1, 1)
combinations <- expand.grid(rep(list(outcomes), 10))
colnames(combinations) <- paste("Turn", 1:10)
library(data.tree)
generate_tree <- function(node, depth, total) {
if (depth == 0) {
node$Set(total = total)
return(node)
} else {
for (outcome in outcomes) {
child <- node$AddChild(name = as.character(total + outcome), total = total + outcome)
generate_tree(child, depth - 1, total + outcome)
}
return(node)
}
}
root <- Node$new("Start", total = 5)
root …Run Code Online (Sandbox Code Playgroud)