向R中的data.table添加其他行,仅包含某些列的值

Nathan Peng Li

基本上,我有一个data.table,其中包含日期,sfc,字符串和数字数据,我想添加额外的行,其中只有三列具有数据,而我希望其余部分为空。所以我问在使用dt [x:y,A = c(...)]等交换值之前如何向我的data.table添加空行。或者还有更好的方法吗?

这是我的数据的示例:

#Required packages
require(data.table)
require(sf)

#Data
ID<-c(1:3)
lon<-c(-86.9655633, -85.8316318, -85.8316318)
lat<-c(34.5967589, 33.6598257, 33.6598257)
Country<-c("Malaysia", "Malayisia", "Singapore")
City<-c("Penang", "Malacca", "Singapore")
area_km2<-c(1048, 277, 728)
event_start<-as.Date(c("2000-01-31", "2000-09-21", "2001-03-17"))
event_end<-as.Date(c("2000-02-14", "2000-10-12", "2001-05-27"))

samp<-data.table(ID, lon, lat, Country, City, area_km2, event_start, event_end)
samp <- st_as_sf(samp, coords = c("lon", "lat"), na.fail=F)

我想要的基本上是添加更多包含国家,城市和地区的数据行,但将其他所有内容都留空

add_Country<-c("Indonesia", "Indonesia", "Myanmar")
add_City<-c("Solo", "Jakarta", "Yangon")
add_area_km2<-c(44, 662, 576)
add<-data.table(add_Country, add_City, add_area_km2)

到目前为止,这是我一直尝试直接附加值并尝试添加空行的方法


require(tibble)

samp %>% add_row(Country = as.vector(add$add_Country), 
                        City = as.vector(add$add_City), 
                        area_km2= as.vector(add$add_area_km2))
empty=matrix(c(rep.int(NA,length(samp))),nrow=nrow(add),ncol=length(samp))  
colnames(empty) = colnames(samp)  
rbind(samp, empty)

这是我的第一次发布,所以请让我知道如何变得更清晰。谢谢!

王和平|

只是将两个data.table直接与rbindlist函数绑定

首先,您需要使用相同的列名构造添加的部分 samp

samp<-data.table(ID, lon, lat, Country, City, area_km2, event_start, event_end)

Country<-c("Indonesia", "Indonesia", "Myanmar")
City<-c("Solo", "Jakarta", "Yangon")
area_km2<-c(44, 662, 576)
add<-data.table(Country, City, area_km2)

然后将它们绑定在一起,注意该选项fill = TRUE

rbindlist(list(samp,add),fill = TRUE)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R,data.table:如何基于存储在字符向量中的其他列的名称来分配某些列的值?

来自分类Dev

添加条件值位于某些其他列中任意位置的列

来自分类Dev

R-在data.table上联接,根据行中另一列的值选择其他列

来自分类Dev

R data.table-在新列中设置值,其他列中的值= 1

来自分类Dev

使用其他列的某些行中的值创建新列

来自分类Dev

使用其他列的某些行中的值创建新列

来自分类Dev

将列添加到包含其他列值列表的pandas DataFrame中

来自分类Dev

R将某些值覆盖其他值的行合并

来自分类Dev

如何在R中的数据框中使用其他方式更改某些行和列中的值?

来自分类Dev

R //如果满足data.table其他列中的多个条件,//计算行并求和col值// //高效快速的data.table解决方案

来自分类Dev

向 R 中的 xts/data.table 对象添加相等的空间时间间隔

来自分类Dev

如何将同一表中某些行的列值设置为与其他某些行的列值相同?

来自分类Dev

只要其他列中的值匹配,就添加列值

来自分类Dev

如何使用R将包含一列相同值但其他列不同的行转换为单个行?

来自分类Dev

根据R中的其他列值复制行

来自分类Dev

将行添加到data.frame中,但仅添加到某些列中

来自分类Dev

将行添加到data.frame中,但仅添加到某些列中

来自分类Dev

根据其他列中的值向数据框添加因子

来自分类Dev

为每个主题ID添加额外的一行,并保留其他列中的值

来自分类Dev

根据R中的行名向列中添加文本

来自分类Dev

R:在满足条件的行中查找一个值,向该值添加某些数字,然后在该行的另一列中创建一条消息

来自分类Dev

一列的每个值仅返回一行,不同列中的其他值仅返回一行

来自分类Dev

过滤列以仅显示有值时,并删除R中的其他值(R,dplyr,lubridate)

来自分类Dev

根据表中的其他行向SQL表添加列

来自分类Dev

向R中的数据框添加列

来自分类Dev

在第1行中仅返回一次列值,而对于其他行则返回NULL

来自分类Dev

向R中的列中的行的子集添加值或更改其值

来自分类Dev

向表中添加一列,并将其值与其他列的特定值进行比较

来自分类Dev

如何获得某些列中包含相同值的行?

Related 相关文章

  1. 1

    R,data.table:如何基于存储在字符向量中的其他列的名称来分配某些列的值?

  2. 2

    添加条件值位于某些其他列中任意位置的列

  3. 3

    R-在data.table上联接,根据行中另一列的值选择其他列

  4. 4

    R data.table-在新列中设置值,其他列中的值= 1

  5. 5

    使用其他列的某些行中的值创建新列

  6. 6

    使用其他列的某些行中的值创建新列

  7. 7

    将列添加到包含其他列值列表的pandas DataFrame中

  8. 8

    R将某些值覆盖其他值的行合并

  9. 9

    如何在R中的数据框中使用其他方式更改某些行和列中的值?

  10. 10

    R //如果满足data.table其他列中的多个条件,//计算行并求和col值// //高效快速的data.table解决方案

  11. 11

    向 R 中的 xts/data.table 对象添加相等的空间时间间隔

  12. 12

    如何将同一表中某些行的列值设置为与其他某些行的列值相同?

  13. 13

    只要其他列中的值匹配,就添加列值

  14. 14

    如何使用R将包含一列相同值但其他列不同的行转换为单个行?

  15. 15

    根据R中的其他列值复制行

  16. 16

    将行添加到data.frame中,但仅添加到某些列中

  17. 17

    将行添加到data.frame中,但仅添加到某些列中

  18. 18

    根据其他列中的值向数据框添加因子

  19. 19

    为每个主题ID添加额外的一行,并保留其他列中的值

  20. 20

    根据R中的行名向列中添加文本

  21. 21

    R:在满足条件的行中查找一个值,向该值添加某些数字,然后在该行的另一列中创建一条消息

  22. 22

    一列的每个值仅返回一行,不同列中的其他值仅返回一行

  23. 23

    过滤列以仅显示有值时,并删除R中的其他值(R,dplyr,lubridate)

  24. 24

    根据表中的其他行向SQL表添加列

  25. 25

    向R中的数据框添加列

  26. 26

    在第1行中仅返回一次列值,而对于其他行则返回NULL

  27. 27

    向R中的列中的行的子集添加值或更改其值

  28. 28

    向表中添加一列,并将其值与其他列的特定值进行比较

  29. 29

    如何获得某些列中包含相同值的行?

热门标签

归档