私は会社のデータフレームと、それらの会社のそれぞれを評価したいカテゴリの個別のデータフレームを持っています。私がやりたいのは、カテゴリのデータフレームをデータフレームの列として会社のデータに追加してから、unnest()
その列に追加することです。最後に、私のチームが会社の評価方法を追跡するために使用できるExcel / csvファイルを作成したいと思います。
これが私のデータです:
companies <- tibble(company = c("company_a", "company_b", "company_c"))
# and here's the structure for my assessment criteria
structure(list(id = c(NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_), evaluator = c(NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_), subawardee_name = c(NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_),
category = c("category_1", "category_1", "category_1", "category_1",
"category_1", "category_2", "category_2", "category_2", "category_2",
"category_2", "category_3", "category_3", "category_3", "category_3",
"category_3", "category_4", "category_4", "category_4", "category_4",
"category_4"), level = c("Ownership", "Leadership", "Employees",
"Operations", "Product", "Ownership", "Leadership", "Employees",
"Operations", "Product", "Ownership", "Leadership", "Employees",
"Operations", "Product", "Ownership", "Leadership", "Employees",
"Operations", "Product"), rating = c(NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_), excerpt = c(NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_), source = c(NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_)), class = c("tbl_df",
"tbl", "data.frame"), row.names = c(NA, -20L))
したがって、このデータフレームを単一の行として各企業に結合したいと思います。私はこれを試しましたが、うまくいきませんでした:
companies %>%
group_by(company) %>%
mutate(data = assessment_criteria)
Error: Column `data` is of unsupported class data.frame
私はまたの組み合わせで参加する様々な試みたmap_df
としますmap2_df
。ここで何か考えはありますか?
代わりに、リスト形式でデータフレームを提供する必要があります。
library(dplyr)
companies_nest <- companies %>%
mutate(data = list(other_data))
companies_nest
#> # A tibble: 3 x 2
#> company data
#> <chr> <list>
#> 1 company_a <tibble [20 x 8]>
#> 2 company_b <tibble [20 x 8]>
#> 3 company_c <tibble [20 x 8]>
その後、必要に応じてアンネストできます。
library(tidyr)
companies_nest %>%
unnest(cols = c(data))
#> # A tibble: 60 x 9
#> company id evaluator subawardee_name category level rating excerpt source
#> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 company~ <NA> <NA> <NA> categor~ Owne~ <NA> <NA> <NA>
#> 2 company~ <NA> <NA> <NA> categor~ Lead~ <NA> <NA> <NA>
#> 3 company~ <NA> <NA> <NA> categor~ Empl~ <NA> <NA> <NA>
#> 4 company~ <NA> <NA> <NA> categor~ Oper~ <NA> <NA> <NA>
#> 5 company~ <NA> <NA> <NA> categor~ Prod~ <NA> <NA> <NA>
#> 6 company~ <NA> <NA> <NA> categor~ Owne~ <NA> <NA> <NA>
#> 7 company~ <NA> <NA> <NA> categor~ Lead~ <NA> <NA> <NA>
#> 8 company~ <NA> <NA> <NA> categor~ Empl~ <NA> <NA> <NA>
#> 9 company~ <NA> <NA> <NA> categor~ Oper~ <NA> <NA> <NA>
#> 10 company~ <NA> <NA> <NA> categor~ Prod~ <NA> <NA> <NA>
#> # ... with 50 more rows
データ
companies <- tibble(company = c("company_a", "company_b", "company_c"))
other_data <- structure(list(id = c(NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_), evaluator = c(NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_), subawardee_name = c(NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_),
category = c("category_1", "category_1", "category_1", "category_1",
"category_1", "category_2", "category_2", "category_2", "category_2",
"category_2", "category_3", "category_3", "category_3", "category_3",
"category_3", "category_4", "category_4", "category_4", "category_4",
"category_4"), level = c("Ownership", "Leadership", "Employees",
"Operations", "Product", "Ownership", "Leadership", "Employees",
"Operations", "Product", "Ownership", "Leadership", "Employees",
"Operations", "Product", "Ownership", "Leadership", "Employees",
"Operations", "Product"), rating = c(NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_), excerpt = c(NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_), source = c(NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_, NA_character_,
NA_character_, NA_character_, NA_character_)), class = c("tbl_df",
"tbl", "data.frame"), row.names = c(NA, -20L))
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加