データフレームのペアワイズ相関

user1017373

私は次のようなデータフレームを持っています、

print(df)
    SAS_a1  SAS2_a1 SAS3_a1 FDF_b1  FDF2_b1
0   0.673114    0.745755    0.989468    0.498920    0.837440
1   0.811218    0.392196    0.505301    0.615603    0.946847
2   0.252856    0.709125    0.321580    0.826123    0.224813
3   0.566833    0.738661    0.626808    0.815460    0.003738
4   0.102995    0.171741    0.246565    0.784519    0.980965

を使用してペアワイズ相関を目指しましたpearsonrが、a1とb1で終わる列間のペアワイズ相関が必要でした。最終結果は次のようになります。

                     PCC   p-value
SAS_a1__FDF_b1 -0.293373  0.631895
SAS_a1__FDF2_b1 -0.947724  0.014235
SAS2_a1__FDF_b1 0.771389  0.126618
SAS2_a1__FDF2_b1 e  0.132380  0.831942
SAS3_a1__FDF_b1  0.422249  0.478808
SAS3_a1__FDF2_b1  0.346411  0.567923

どんな提案も素晴らしいでしょう.. !!! これが私が試したことです、

columns = df.columns.tolist()
for col_a, col_b in itertools.combinations(columns, 2):
    correlations[col_a + '__' + col_b] = pearsonr(df.loc[:, col_a], df.loc[:, col_b])
results = DataFrame.from_dict(correlations, orient='index')
results.columns = ['PCC', 'p-value']
P.ティルマン

それが最も洗練された解決策かどうかはわかりませんが、リスト内包表記を使用して、関連する列を含むリストを作成できます。

import pandas as pd
from scipy.stats import pearsonr
result = pd.DataFrame()
for a1 in [column for column in df.columns if 'a1' in column]:
  for b1 in [column for column in df.columns if 'b1' in column]:
    result = result.append(
               pd.Series(
                 pearsonr(df[a1],df[b1]),
                 index=['PCC', 'p-value'],
                 name=a1 + '__' +b1
               ))

PS:次の質問に輸入品を含めていただければ幸いです。(答える人がグーグルする必要がないように)

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

パンダのデータフレームでペアワイズ相関を計算する方法

分類Dev

R:大きなデータフレームをペアワイズ相関行列に変換する

分類Dev

Rのラスターレイヤー間のペアワイズ相関

分類Dev

データフレームの列間にペアワイズ関係を作成する

分類Dev

データフレームからのペアワイズ重複削除

分類Dev

データフレームR内の文字のペアワイズオカレンスのカウント

分類Dev

2つのデータフレーム間のすべてのペアワイズ列の散布図

分類Dev

2つの異なるデータフレームの列間のペアワイズ比較

分類Dev

パンダのデータフレームでの統計的有意性のペアワイズテスト

分類Dev

バイナリデータフレームで一致のペアワイズ比率を取得する

分類Dev

データフレーム内の変数間の高速ペアワイズ単純線形回帰

分類Dev

2列以上のデータフレームからのペアワイズ因子/カテゴリ変数分割表

分類Dev

Rのデータフレームからペアワイズ値の正方行列を作成します

分類Dev

rのデータフレーム列エントリのペアワイズ比較

分類Dev

3つ以上の列に一致するペアワイズデータフレームを作成します

分類Dev

Pandas \ Python:ペアワイズ比較の結果として新しいデータフレームを作成する

分類Dev

dplyrを使用してRデータフレームのペアワイズ差を計算する

分類Dev

2つの列からペアワイズデータフレームを作成します

分類Dev

パンダ:データフレーム内の同じ値のインデックスペアワイズオカレンスをカウントします

分類Dev

パンダ-アライメントなしの2つのデータフレーム間の相関

分類Dev

パンダ:データフレームとパネルにペアワイズで関数を適用します

分類Dev

Rを使用したデータフレーム内のペアワイズ変数のグレンジャー因果分析

分類Dev

パンダ-インデックスからのペアワイズの組み合わせでデータフレームを正方行列に変換します

分類Dev

データフレームのすべての行間のペアワイズユークリッド距離の計算

分類Dev

2つのデータフレーム間の相関

分類Dev

30K列のデータフレームの相関

分類Dev

異なるデータフレームの列間の相関

分類Dev

元のgeopandasデータフレームのすべての列を保持しながら、非ペアワイズ距離測定

分類Dev

相関行列を、各行と列のペアのレコードを持つデータフレームに変換します

Related 関連記事

  1. 1

    パンダのデータフレームでペアワイズ相関を計算する方法

  2. 2

    R:大きなデータフレームをペアワイズ相関行列に変換する

  3. 3

    Rのラスターレイヤー間のペアワイズ相関

  4. 4

    データフレームの列間にペアワイズ関係を作成する

  5. 5

    データフレームからのペアワイズ重複削除

  6. 6

    データフレームR内の文字のペアワイズオカレンスのカウント

  7. 7

    2つのデータフレーム間のすべてのペアワイズ列の散布図

  8. 8

    2つの異なるデータフレームの列間のペアワイズ比較

  9. 9

    パンダのデータフレームでの統計的有意性のペアワイズテスト

  10. 10

    バイナリデータフレームで一致のペアワイズ比率を取得する

  11. 11

    データフレーム内の変数間の高速ペアワイズ単純線形回帰

  12. 12

    2列以上のデータフレームからのペアワイズ因子/カテゴリ変数分割表

  13. 13

    Rのデータフレームからペアワイズ値の正方行列を作成します

  14. 14

    rのデータフレーム列エントリのペアワイズ比較

  15. 15

    3つ以上の列に一致するペアワイズデータフレームを作成します

  16. 16

    Pandas \ Python:ペアワイズ比較の結果として新しいデータフレームを作成する

  17. 17

    dplyrを使用してRデータフレームのペアワイズ差を計算する

  18. 18

    2つの列からペアワイズデータフレームを作成します

  19. 19

    パンダ:データフレーム内の同じ値のインデックスペアワイズオカレンスをカウントします

  20. 20

    パンダ-アライメントなしの2つのデータフレーム間の相関

  21. 21

    パンダ:データフレームとパネルにペアワイズで関数を適用します

  22. 22

    Rを使用したデータフレーム内のペアワイズ変数のグレンジャー因果分析

  23. 23

    パンダ-インデックスからのペアワイズの組み合わせでデータフレームを正方行列に変換します

  24. 24

    データフレームのすべての行間のペアワイズユークリッド距離の計算

  25. 25

    2つのデータフレーム間の相関

  26. 26

    30K列のデータフレームの相関

  27. 27

    異なるデータフレームの列間の相関

  28. 28

    元のgeopandasデータフレームのすべての列を保持しながら、非ペアワイズ距離測定

  29. 29

    相関行列を、各行と列のペアのレコードを持つデータフレームに変換します

ホットタグ

アーカイブ