1
2つの列で構成されたデータセットが得られました。 「WEBDATA」列には、各セルのリストが含まれています。これはリストを複数の行に分割するR
私のデータセットは、このようになります...私はリストが含まれていると私は立ち往生mのデータセットに対処する必要が初めてです:
私は、各セル内のコンテンツをチェックmはWORD | WEBDATA
Home | list(Domain = c(77, 25, 7, 97, 71, 1, 42, 35, 37, 58, 9
Baby | list(Domain = c(77, 25, 7, 97, 71, 1, 42, 35, 37, 58, 9
Dog | list(Domain = c(77, 25, 7, 97, 71, 1, 42, 35, 37, 58, 9
Food | list(Domain = c(77, 25, 7, 97, 71, 1, 42, 35, 37, 58, 9
WEBDATA列が、それは私にこの返します
class(dataset$WEBDATA)
[1] "list"
testdataset <- data.frame(dataset$WEBDATA[[2]])
Domain | Url
1 website1.com | https://www.website1.com/product2/
2 mysuperwebsite.com | https://www.mysuperwebsite.com/productB/
3 bestwebsite.uk | https://www.bestwebsite.uk/product67/
:
> dataset$WEBDATA[[1]]
Domain
1 website1.com
2 mysuperwebsite.com
3 bestwebsite.uk
Url
1 https://www.website1.com/product2/
2 https://www.mysuperwebsite.com/productB/
3 https://www.bestwebsite.uk/product67/
すると、それがリストだった確かに、それがどのように見えるかを確認するために、私はこれを試してみました
私の目標は、WEBDATAリストを複数の行に分割することです。
最終データセットは次のようになります。
WORD | Number | Domain | Url
Home | 1 | website1.com | https://www.website1.com/product2/
Home | 2 | mysuperwebsite.com | https://www.mysuperwebsite.com/productB/
Home | 3 | bestwebsite.uk | https://www.bestwebsite.uk/product67/
Baby | 1 | websitezz.uk | https://www.websitezz.uk/page/
Baby | 2 | websiteabc.com | https://www.websiteabc.com/post/
Baby | 3 | thewebsite.com | https://www.thewebsite.com/post75/
私はstrsplit()関数を考えたが、リストを、私は実際にそれを作る方法を知りません。あなたは助けてもらえますか?ここで
は、サンプルデータセットです、あなたがRに貼り付けることができます。コメントに@alistaireサイスとして
theDataReconstituted <- structure(list(
WORD = structure(c(8L, 7L, 6L, 10L, 9L), .Label = c("dog dood", "dog foo", "dog food uk", "dog foof", "dogfood", "burns dog food", "canagan dog food", "dog food", "skinners dog food", "wainwrights dog food"), class = "factor"),
WEBDATA = list(
structure(list(
Domain = structure(c(1L, 2L, 2L), .Label = c("pet-supermarket.co.uk", "petsathome.com"), class = "factor"),
Url = structure(c(3L, 1L, 2L), .Label = c("petsathome.com/shop/en/pets/dog/dog-food-and-treats", "petsathome.com/shop/en/pets/dog/dog-food-and-treats/dry-dog-food", "pet-supermarket.co.uk/Dog/Dog-Food-Treats/Dog-Food/c/PSGB00070"), class = "factor")),
.Names = c("Domain", "Url"), class = "data.frame", row.names = c(NA, -3L)),
structure(list(
Domain = structure(c(1L, 1L, 1L), .Label = "canagan.co.uk", class = "factor"),
Url = structure(c(1L, 3L, 2L), .Label = c("canagan.co.uk/", "canagan.co.uk/products-cat.html", "canagan.co.uk/products.html"), class = "factor")),
.Names = c("Domain", "Url"), class = "data.frame", row.names = c(NA, -3L)),
structure(list(
Domain = structure(c(1L, 1L, 2L), .Label = c("burnspet.co.uk", "petsathome.com"), class = "factor"),
Url = structure(1:3, .Label = c("burnspet.co.uk/", "burnspet.co.uk/burns-dog-food-products/", "petsathome.com/shop/en/pets/merch-groups/burns"), class = "factor")),
.Names = c("Domain", "Url"), class = "data.frame", row.names = c(NA, -3L)),
structure(list(
Domain = structure(c(1L, 1L, 1L), .Label = "petsathome.com", class = "factor"),
Url = structure(c(2L, 3L, 1L), .Label = c("petsathome.com/shop/en/pets/merch-groups/feature/wainwrights-dog-food", "petsathome.com/shop/en/pets/merch-groups/mg-004", "petsathome.com/shop/en/pets/merch-groups/wainwrights-dog-"), class = "factor")),
.Names = c("Domain", "Url"), class = "data.frame", row.names = c(NA, -3L)),
structure(list(
Domain = structure(c(1L, 1L, 1L), .Label = "skinnerspetfoods.co.uk", class = "factor"),
Url = structure(c(1L, 3L, 2L), .Label = c("skinnerspetfoods.co.uk/", "skinnerspetfoods.co.uk/our-range/", "skinnerspetfoods.co.uk/product-category/field-trial-range/"), class = "factor")),
.Names = c("Domain", "Url"), class = "data.frame", row.names = c(NA, -3L)))),
row.names = c(NA, -5L),
class = c("tbl_df", "tbl", "data.frame"),
.Names = c("WORD", "WEBDATA"))
データの代表サンプルで 'dput'を呼び出した結果を編集できますか?誰もが正確な状況を再現することは本当に不可能なように、ネストされたリスト列を持っています。 – alistaire
'Home'と' Website1.com'などをどうやって関連づけていますか?これらのサイトは、「赤ちゃん」に関連付けられている2番目のアイテムに属しているようです。 – MKR
Website1.comは、ホームと同じ行のリストに含まれています。気づいてくれてありがとう、上記のコードで間違いがあった、私はそれを編集しました。 – Remi