私はRの比較的新参者です。これを理解しようとして、過去2営業日を検索しましたが、失敗しました。関数によって生成される因子のリストがあります。さまざまな長さのリストに9つのアイテムがあります。
>summary(list_dataframes)
Length Class Mode
[1,] 1757 factor numeric
[2,] 1776 factor numeric
[3,] 1737 factor numeric
[4,] 1766 factor numeric
[5,] 1783 factor numeric
[6,] 1751 factor numeric
[7,] 1744 factor numeric
[8,] 1749 factor numeric
[9,] 1757 factor numeric
出てきたデータのサンプルの一部:
list_dataframes
[[1]]
[1] 1776234_at 1779003_at 1776344_at 1777664_at 1772541_at 1774525_at
[[2]]
[1] 1771703_at 1776299_at 1772744_at 1780116_at 1775451_at 1778821_at
[7] 1774342_at
[[3]]
[1] 1780116_at 1776262_at 1775451_at 1780200_at 1775704_at
モードが「数値」であると表示される理由がわかりません。個々のエントリは、「S35_at」のように数字と文字を組み合わせたものです。
重複する値を作成せずに、これを9列1783行のテーブルにしたいと思います。(したがって、do.callを使用しようとしましたが、機能しませんでした。結果として、重複がいっぱいになりました。)短いものは、空のスペースにNAが含まれるか、空白になる可能性があります。
最終的には、スプレッドシートに入れることができるものになってしまう必要があります。
これを行う方法が必要です。ありがとうございました!
4列のデータがある場合、最初はデータフレームとして出力されていたので、追加する必要があると思いますが、必要なデータは1列だけで、このリストを作成する関数をサブセット化して、実際に必要な1列だけを作成したようです。もはやデータフレームではありません。
dput(head(list_dataframes))
list(structure(c(3605L, 5065L, 3663L, 4349L, 1655L, 2700L, 5692L, plus many more
.Label = c("1769308_at",
"1769311_at", "1769312_at", "1769313_at", "1769314_at", "1769317_at", plus many more
this pattern is repeated nine more times
私がやろうとしているのは、次のようなテーブルを作成することです。
a= xyz,tuv,efg,hij,def
b= xyz,tuv,efg
c= tuv,efg,hij,def
私が作りたいのはテーブルです
a b c
xyz xyz tuv
tuv tuv efg
efg efg hij
hij NA NA
NA NA NA
NA could be blank as well.
リストのマニュアルセクションをよく読んだ後、私はリストの埋もれたリストを生成したと判断しました。それには、私が2層下に埋めたいデータを含む9つのアイテムがありました。つまり、それを確認するには、[[1]]を使用する必要がありました。また、Rに何かがあり、データフレームを維持する代わりに、単一列のデータフレームが要因になるため、さらに複雑になりました。それを修正するために(一種の)方程式に1つのステップを追加して、その係数をデータフレームに変更しました。
その後、lapplyを使用して結果を生成すると、少なくとも要因の問題は解決されました。次に、次の手順を使用してデータフレームを引き出すことができます。
first <- list_dataframes[[1]]
second <- list_dataframes[[2]]
third <- list_dataframes[[3]]
fourth <- list_dataframes[[4]]
fifth <- list_dataframes[[5]]
sixth <- list_dataframes[[6]]
seventh <- list_dataframes[[7]]
eighth <- list_dataframes[[8]]
nineth <- list_dataframes[[9]]
all_results <- cbindX(first,second,third,fourth,fifth,sixth,seventh, eighth,nineth)
次に、write.csvを使用してcsvファイルを記述し、目的の正しい結果を得ることができました。だから私は私の答えがあると思います。私はそれが今機能することを意味します。
しかし、今では正しい結果が得られているにもかかわらず、この作業を最適に行うには何かが欠けていると思います。