数据扩展R/Python

数据扩展R/Python,python,r,pandas,data.table,Python,R,Pandas,Data.table,我有一个大的csv文件记录如下 name year value brand1 2000 45,000 brand2 2000 42,000 brand3 2000 46,000 brand1 2001 41,600 brand2 2001 49,000 brand4 2001 47,000 br

我有一个大的csv文件记录如下

name         year         value
brand1       2000         45,000
brand2       2000         42,000
brand3       2000         46,000

brand1       2001         41,600
brand2       2001         49,000
brand4       2001         47,000

brand1       2002         39,000
brand5       2002         40,500
brand3       2002         42,800
我想将我的大csv转换为如下所示,以便捕获跨越所有记录年份的所有唯一名称,并且当名称在特定记录年份中丢失时,其值等于零。看这个,

name       year      value
brand1       2000         45,000
brand2       2000         42,000
brand3       2000         46,000
brand4       2000         0000
brand5       2000         0000

brand1       2001         41,600
brand2       2001         49,000
brand4       2001         47,000
brand3       2001         0000
brand5       2001         0000

brand1       2002         39,000
brand5       2002         40,500
brand3       2002         42,800
brand2       2002         0000
brand4       2000         0000

想法?

在R中有一个解决方案

library(tidyverse)

df <- data.frame(name = c("brand1", "brand2", "brand4", "brand5", "brand1"), 
                 year = c(2000, 2000, 2000, 2001, 2001),
                 value = c(53, 32, 242, 43, 23))


df1 <- df %>% complete(year, name, fill = list(value = 0))
库(tidyverse)

df在R中有一个解决方案

library(tidyverse)

df <- data.frame(name = c("brand1", "brand2", "brand4", "brand5", "brand1"), 
                 year = c(2000, 2000, 2000, 2001, 2001),
                 value = c(53, 32, 242, 43, 23))


df1 <- df %>% complete(year, name, fill = list(value = 0))
库(tidyverse)

df问题不是集中在一种编程语言上,也没有代码尝试,通常是关闭的。让它保持活力的最好方法是决定您想要哪种语言,并展示您在该语言中的最佳尝试。只需左键连接合并一个名称和年份的所有可能组合的数据集。然后将NAs转换为零。有什么想法?到底是什么问题?堆栈溢出不是免费的代码编写服务。请参阅:,。不关注单一编程语言且不尝试编写代码的问题通常是关闭的。让它保持活力的最好方法是决定您想要哪种语言,并展示您在该语言中的最佳尝试。只需左键连接合并一个名称和年份的所有可能组合的数据集。然后将NAs转换为零。有什么想法?到底是什么问题?堆栈溢出不是免费的代码编写服务。见:。