テキストから文字列を分割してデータフレームに入力するパンダ

ccsv

2色のビー玉を描いて実験したところ、次のようになりました。

'Experiment Draw1,Draw2'    
ie: 'Trail1 Yellow-Green'

そのため、結果をデータフレームに挿入し、3つの列(実験、最初の描画、2番目の描画)を取得したいと思います。結果を数値として結果データフレームにプロットできるように、効率的に分割するにはどうすればよいですか(つまり)

import pandas as pd

df=pd.DataFrame({'Data': ['Trail1 Yellow-Green','Sample1 Gold-Blue', 'Sample2 Silver-Gold', 'Test2 Gold-Yellow', 'Test Red-Blue'],})

df2 = df['Data'].apply(lambda x: pd.Series(x.split(' ')))
df3 = df2[1].apply(lambda x: pd.DataFrame(x.split('-')))

axis1=['Red','Orange', 'Yellow', 'Green', 'Blue', 'Gold', 'Silver']
axis2=['Red','Orange', 'Yellow', 'Green', 'Blue', 'Gold', 'Silver']

results=pd.DataFrame(index=axis1, columns=axis2)

データフレームに用語を追加する最良の方法は、forループと次のようなコードを使用することです

results.ix[df3.loc['Red'], 'Blue'] = 'Y'

#For numerical values

results.ix[df3.loc['Red'], 'Blue'] = 1
アンディ・ヘイデン

str.extractメソッドを使用できます

In [11]: s = df.Data

In [12]: res = s.str.extract("(?P<experiment>.*?) (?P<first>.*?)-(?P<second>.*)")

In [13]: res
Out[13]: 
  experiment   first  second
0     Trail1  Yellow   Green
1    Sample1    Gold    Blue
2    Sample2  Silver    Gold
3      Test2    Gold  Yellow
4       Test     Red    Blue

それから私はあなたが探していると思いますpivot_table

In [14]: res.pivot_table(values='experiment', cols='first', rows='second', 
                         aggfunc=len, fill_value=0)
Out[14]: 
first   Gold  Red  Silver  Yellow
second                           
Blue       1    1       0       0
Gold       0    0       1       0
Green      0    0       0       1
Yellow     1    0       0       0

同じ行と列のインデックスを再作成するには、次のようにインデックスを再作成する必要があると思います。

In [15]: _.reindex(axis1).reindex_axis(axis1, 1).fillna(0)

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

パンダ-リストにデータフレーム値を文字列として入力します

分類Dev

文字列のリストに基づいてパンダデータフレームから値を抽出する

分類Dev

パンダのデータフレームに文字列を入力する

分類Dev

テキストデータをパンダを使用してリクエストオブジェクトからデータフレームに変換する

分類Dev

文字列をコンマで分割し、パンダのデータフレームに挿入する方法

分類Dev

含まれているテキスト値に基づいてパンダのデータフレーム列を複数の列に分割する方法

分類Dev

パンダ:データフレーム列に不足しているデータを入力します

分類Dev

入力列インデックスに基づいてパンダデータフレームを分割およびマージします

分類Dev

他の列から入力を受け取るパンダデータフレームに新しい列を入力します

分類Dev

パンダで計算をループするためにリストからデータフレーム式に文字列を挿入する

分類Dev

テキストからデータフレームに文字列として数値をインポートする

分類Dev

関数呼び出しを使用してパンダデータフレームに列を入力する

分類Dev

Angularを使用して、入力フィールドの文字列からプレーンテキストにエンコードされたHTMLを隠蔽する

分類Dev

ダミー列からのテキスト文字列を使用してデータフレーム列を作成する

分類Dev

テキストフィールドから取得した入力を使用してデータベースから取得した文字列を変更する

分類Dev

NAの条件ステートメントを使用してデータフレームの列から値を入力する-R

分類Dev

パンダの2つのデータフレームを比較して入力を分割する方法

分類Dev

パンダの別のデータフレームからの同様の値に基づいて、データフレームの列に入力します

分類Dev

別の列エントリが2つのデータフレーム間で一致する場合は、別のデータフレームの行エントリからパンダ列にデータを入力します

分類Dev

特定の行のヘッダーを使用して、テキストファイルを複数のパンダデータフレームに分割します

分類Dev

2つのデータフレームから2つの列に一致するパンダデータフレームを入力する

分類Dev

列名のリストを介してデータフレームから列を選択するPythonパンダ

分類Dev

条件に基づいてパンダデータフレーム列の特殊文字の文字列を分割する

分類Dev

キーを分割して値を減らすことにより、パンダのデータフレームをネストされたdictに保存します

分類Dev

パンダデータフレームの文字列からペンタスリートと数字を削除する

分類Dev

パンダのデータフレーム列リスト値を分割して行を複製する

分類Dev

文字列/テキストとパンダのデータフレームを書いてExcelに

分類Dev

データフレームパンダの文字列としてリストアイテムを読み取る

分類Dev

forループを使用してパンダのデータフレーム列から文字を削除する

Related 関連記事

  1. 1

    パンダ-リストにデータフレーム値を文字列として入力します

  2. 2

    文字列のリストに基づいてパンダデータフレームから値を抽出する

  3. 3

    パンダのデータフレームに文字列を入力する

  4. 4

    テキストデータをパンダを使用してリクエストオブジェクトからデータフレームに変換する

  5. 5

    文字列をコンマで分割し、パンダのデータフレームに挿入する方法

  6. 6

    含まれているテキスト値に基づいてパンダのデータフレーム列を複数の列に分割する方法

  7. 7

    パンダ:データフレーム列に不足しているデータを入力します

  8. 8

    入力列インデックスに基づいてパンダデータフレームを分割およびマージします

  9. 9

    他の列から入力を受け取るパンダデータフレームに新しい列を入力します

  10. 10

    パンダで計算をループするためにリストからデータフレーム式に文字列を挿入する

  11. 11

    テキストからデータフレームに文字列として数値をインポートする

  12. 12

    関数呼び出しを使用してパンダデータフレームに列を入力する

  13. 13

    Angularを使用して、入力フィールドの文字列からプレーンテキストにエンコードされたHTMLを隠蔽する

  14. 14

    ダミー列からのテキスト文字列を使用してデータフレーム列を作成する

  15. 15

    テキストフィールドから取得した入力を使用してデータベースから取得した文字列を変更する

  16. 16

    NAの条件ステートメントを使用してデータフレームの列から値を入力する-R

  17. 17

    パンダの2つのデータフレームを比較して入力を分割する方法

  18. 18

    パンダの別のデータフレームからの同様の値に基づいて、データフレームの列に入力します

  19. 19

    別の列エントリが2つのデータフレーム間で一致する場合は、別のデータフレームの行エントリからパンダ列にデータを入力します

  20. 20

    特定の行のヘッダーを使用して、テキストファイルを複数のパンダデータフレームに分割します

  21. 21

    2つのデータフレームから2つの列に一致するパンダデータフレームを入力する

  22. 22

    列名のリストを介してデータフレームから列を選択するPythonパンダ

  23. 23

    条件に基づいてパンダデータフレーム列の特殊文字の文字列を分割する

  24. 24

    キーを分割して値を減らすことにより、パンダのデータフレームをネストされたdictに保存します

  25. 25

    パンダデータフレームの文字列からペンタスリートと数字を削除する

  26. 26

    パンダのデータフレーム列リスト値を分割して行を複製する

  27. 27

    文字列/テキストとパンダのデータフレームを書いてExcelに

  28. 28

    データフレームパンダの文字列としてリストアイテムを読み取る

  29. 29

    forループを使用してパンダのデータフレーム列から文字を削除する

ホットタグ

アーカイブ