複数のグループを持つリストからデータを抽出するにはどうすればよいですか?

kin182

私はRを初めて使用し、複数のグループを持つリストからデータを抽出することについて質問があります。たとえば、次のようなデータセットがあります。

data(iris)

iris$Group = rep(c("High","Low", each=5))
iris = iris[sample(nrow(iris)),]
mylist = list(iris[1:50,], iris[51:100,], iris[101:150,])

head(mylist)[[1]]

    Sepal.Length Sepal.Width Petal.Length Petal.Width    Species Group
51           7.0         3.2          4.7         1.4 versicolor  High
123          7.7         2.8          6.7         2.0  virginica  High
147          6.3         2.5          5.0         1.9  virginica   Low
23           4.6         3.6          1.0         0.2     setosa  High
120          6.0         2.2          5.0         1.5  virginica   Low
141          6.7         3.1          5.6         2.4  virginica  High

各リスト内高と低間のSpeciesP値をグループ化して計算したいと思います。たとえば、リストごとvirginicaのHighとLowの間のP値などを取得したいと思います。t.testSepal.LengthGroupGroupSpecies

私はこれについて混乱しています。誰か助けてもらえますか?ありがとう!

マウリッツエバーズ

ベースRでは、次のことができます

lapply(mylist, function(x)
    with(x, t.test(Sepal.Length[Group == "High"], Sepal.Length[Group == "Low"])$p.value))
#[[1]]
#[1] 0.2751545
#
#[[2]]
#[1] 0.5480918
#
#[[3]]
#[1] 0.864256

またはpurrr/tidyverseアプローチ

library(tidyverse)
bind_rows(mylist, .id = "id") %>%
    group_by(id) %>%
    nest() %>%
    mutate(pval = map_dbl(data, ~t.test(
        .x$Sepal.Length[.x$Group == "High"],
        .x$Sepal.Length[.x$Group == "Low"])$p.value))
## A tibble: 3 x 3
#  id    data               pval
#  <chr> <list>            <dbl>
#1 1     <tibble [50 × 6]> 0.275
#2 2     <tibble [50 × 6]> 0.548
#3 3     <tibble [50 × 6]> 0.864

更新

Sepal.LengthGroup = "Low"およびGroup = "High"内部のt検定を実行するにSpecies次のことができます。

lapply(mylist, function(x)
    with(x, setNames(sapply(unique(Species), function(y)
        t.test(Sepal.Length[Group == "High" & Species == y], Sepal.Length[Group == "Low" & Species == y])$p.value), unique(Species))))
#[[1]]
#versicolor  virginica     setosa
#0.80669755 0.07765262 0.47224383
#
#[[2]]
#    setosa  virginica versicolor
# 0.6620094  0.2859713  0.2427945
#
#[[3]]
#versicolor     setosa  virginica
# 0.5326379  0.6412661  0.5477179

多重仮説検定では、生のp値を調整する必要があることに注意してください。

多重仮説検定を説明するために、上記のコードを少し変更して、

lapply(mylist, function(x)
    with(x, p.adjust(setNames(sapply(unique(Species), function(y)
        t.test(Sepal.Length[Group == "High" & Species == y], Sepal.Length[Group == "Low" & Species == y])$p.value), unique(Species)))))
#[[1]]
#versicolor  virginica     setosa
# 0.9444877  0.2329579  0.9444877
#
#[[2]]
#    setosa  virginica versicolor
# 0.7283836  0.7283836  0.7283836
#
#[[3]]
#versicolor     setosa  virginica
#         1          1          1

ここではp.adjust、デフォルトのホルム補正を使用します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

グーグルデータスタジオで複数の値を持つフィルターを作成するにはどうすればよいですか?

分類Dev

複数の<span>タグから抽出し、BS4を使用してデータをグループ化するにはどうすればよいですか?

分類Dev

子を持つ親オブジェクトのリストからデータを抽出するにはどうすればよいですか?

分類Dev

複数の分布を持つ海生分布プロットからすべてのデータを取得するにはどうすればよいですか?

分類Dev

複数のネストされたフィールドを持つデータ構造でmatlabismemberを使用するにはどうすればよいですか?

分類Dev

辞書キーに基づいてリスト値を持つデータをグループ化するにはどうすればよいですか?

分類Dev

リストを複数の列を持つデータフレームに変換するにはどうすればよいですか?

分類Dev

Cassandraのテーブルから「リスト」としてデータ型を持つ列を取得するにはどうすればよいですか?

分類Dev

複数の推定値を持つデータフレームから回帰テーブルを作成するにはどうすればよいですか?

分類Dev

無限ループを持つ関数のポストドミネーターツリーを構築するにはどうすればよいですか?

分類Dev

Accessからインポートされたデータからリストのグループを作成するにはどうすればよいですか?

分類Dev

データベースから特定の日を持つデータを抽出するにはどうすればよいですか

分類Dev

ネストされたリスト内のデータから複数の密度プロットを作成するにはどうすればよいですか?

分類Dev

複数のインデックスを持つデータ系列から値を削除するにはどうすればよいですか?

分類Dev

Pythonを使用して複数のテキストファイルからExcelにデータを抽出するにはどうすればよいですか?(シートごとに1つのファイルのデータ)

分類Dev

サンプルデータのセットから複数のグラフをプロットするにはどうすればよいですか?

分類Dev

複数の基準を持つタプルのリストの最後の数/要素を合計するにはどうすればよいですか?

分類Dev

jQueryとCSSを使用して、複数の値を持つリストをフィルタリングするにはどうすればよいですか?

分類Dev

複数のグループを持つggplotgeom_lineのx軸にカテゴリ変数を作成するにはどうすればよいですか?

分類Dev

1つの要素にセレクターを持つ複数のイベントリスナーを追加するにはどうすればよいですか?

分類Dev

1)リスト内の複数のテーブルを降順で並べ替えるにはどうすればよいですか?2)複数のテーブルの1つのリストからデータフレームを作成するにはどうすればよいですか?

分類Dev

複数の変数を持つグラフのExcelデータポイントを変更するにはどうすればよいですか?

分類Dev

数学関数を適用するときに、異なる属性を持つ要素を持つRリストから完全なデータを抽出するにはどうすればよいですか?

分類Dev

数学関数を適用するときに、異なる属性を持つ要素を持つRリストから完全なデータを抽出するにはどうすればよいですか?

分類Dev

データフレームから複数のグループのmatplotlibにエラーバーを追加するにはどうすればよいですか?

分類Dev

複数のディレクトリを持つHTMLでCSSスタイルを使用するにはどうすればよいですか?

分類Dev

iOSアプリケーションの1つのクエリで単一のsqliteデータベースから複数のテーブルからデータを取得するにはどうすればよいですか?

分類Dev

複数の文字列値を持つキーを含む配列をフィルタリングするにはどうすればよいですか?

分類Dev

linqを使用してデータテーブルから複数の列でグループ化するにはどうすればよいですか?

Related 関連記事

  1. 1

    グーグルデータスタジオで複数の値を持つフィルターを作成するにはどうすればよいですか?

  2. 2

    複数の<span>タグから抽出し、BS4を使用してデータをグループ化するにはどうすればよいですか?

  3. 3

    子を持つ親オブジェクトのリストからデータを抽出するにはどうすればよいですか?

  4. 4

    複数の分布を持つ海生分布プロットからすべてのデータを取得するにはどうすればよいですか?

  5. 5

    複数のネストされたフィールドを持つデータ構造でmatlabismemberを使用するにはどうすればよいですか?

  6. 6

    辞書キーに基づいてリスト値を持つデータをグループ化するにはどうすればよいですか?

  7. 7

    リストを複数の列を持つデータフレームに変換するにはどうすればよいですか?

  8. 8

    Cassandraのテーブルから「リスト」としてデータ型を持つ列を取得するにはどうすればよいですか?

  9. 9

    複数の推定値を持つデータフレームから回帰テーブルを作成するにはどうすればよいですか?

  10. 10

    無限ループを持つ関数のポストドミネーターツリーを構築するにはどうすればよいですか?

  11. 11

    Accessからインポートされたデータからリストのグループを作成するにはどうすればよいですか?

  12. 12

    データベースから特定の日を持つデータを抽出するにはどうすればよいですか

  13. 13

    ネストされたリスト内のデータから複数の密度プロットを作成するにはどうすればよいですか?

  14. 14

    複数のインデックスを持つデータ系列から値を削除するにはどうすればよいですか?

  15. 15

    Pythonを使用して複数のテキストファイルからExcelにデータを抽出するにはどうすればよいですか?(シートごとに1つのファイルのデータ)

  16. 16

    サンプルデータのセットから複数のグラフをプロットするにはどうすればよいですか?

  17. 17

    複数の基準を持つタプルのリストの最後の数/要素を合計するにはどうすればよいですか?

  18. 18

    jQueryとCSSを使用して、複数の値を持つリストをフィルタリングするにはどうすればよいですか?

  19. 19

    複数のグループを持つggplotgeom_lineのx軸にカテゴリ変数を作成するにはどうすればよいですか?

  20. 20

    1つの要素にセレクターを持つ複数のイベントリスナーを追加するにはどうすればよいですか?

  21. 21

    1)リスト内の複数のテーブルを降順で並べ替えるにはどうすればよいですか?2)複数のテーブルの1つのリストからデータフレームを作成するにはどうすればよいですか?

  22. 22

    複数の変数を持つグラフのExcelデータポイントを変更するにはどうすればよいですか?

  23. 23

    数学関数を適用するときに、異なる属性を持つ要素を持つRリストから完全なデータを抽出するにはどうすればよいですか?

  24. 24

    数学関数を適用するときに、異なる属性を持つ要素を持つRリストから完全なデータを抽出するにはどうすればよいですか?

  25. 25

    データフレームから複数のグループのmatplotlibにエラーバーを追加するにはどうすればよいですか?

  26. 26

    複数のディレクトリを持つHTMLでCSSスタイルを使用するにはどうすればよいですか?

  27. 27

    iOSアプリケーションの1つのクエリで単一のsqliteデータベースから複数のテーブルからデータを取得するにはどうすればよいですか?

  28. 28

    複数の文字列値を持つキーを含む配列をフィルタリングするにはどうすればよいですか?

  29. 29

    linqを使用してデータテーブルから複数の列でグループ化するにはどうすればよいですか?

ホットタグ

アーカイブ