簡體   English   中英

創建R中兩個向量的所有組合?

[英]Create all combinations of two vectors in R?

我有一個數據框,其價格根據日期,狀態和產品代碼編制了索引。

但是,某些數據丟失。 我想要一個日期,狀態和產品代碼的每種可能組合的數據點。

(順便說一下,我的日期向量是從200601到201212的整數。)

我要這樣做的方式是,對於每個缺少的價格,在最近的日期取相同州的同一UPC的價格。

假設200803狀態1中產品A的價格缺失。我想創建一種算法,查找狀態1中產品A的價格為200804,然后為200802,然后為200805,依此類推,等等。找到一個價格。 如果該產品根本沒有該州的價格,我只想要一個NA。

有誰知道如何做到這一點? 我想象有一個軟件包可以做到這一點。 謝謝。

我們可以使用expand.grid來獲取三列中unique值的所有組合。 然后,使用mergeall.x=TRUE與初始數據集合並。

 df2 <- expand.grid(lapply(df1[c('Date', 'State', 
                  'Product Code')], unique))
 merge(df2, df1, by = c('Date', 'State', 'Product Code'),
             all.x=TRUE)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM