別のデータフレームの行の範囲に基づいてパンダ列を追加/入力

泳ぐ

パンダを使用して、時間サンプルでdf1のインデックスを作成しました。

data = '''\
time       flags    input                  
8228835.0  53153.0  32768.0
8228837.0  53153.0  32768.0
8228839.0  53153.0  32768.0
8228841.0  53153.0  32768.0
8228843.0  61345.0  32768.0'''

fileobj = pd.compat.StringIO(data)
df1 = pd.read_csv(fileobj, sep='\s+', index_col='time')

df2は、「チェック」の状態がTrueである範囲を定義するために、開始と終了の時間範囲を示します。

data = '''\
        check     start       end
20536   True   8228837   8228993
20576   True   8232747   8232869
20554   True   8230621   8230761
20520   True   8227351   8227507
20480   True   8223549   8223669
20471   True   8221391   8221553'''

fileobj = pd.compat.StringIO(data)
df2 = pd.read_csv(fileobj, sep='\s+')

私がする必要があるのは、df1に「check」の列を追加し、df2で定義された実際の時間範囲にTrueの値を入力することです。他のすべてはFalseである必要があります。結果の例は次のようになります。

             flags    input    check
time                       
8228835.0  53153.0  32768.0    False
8228837.0  53153.0  32768.0    True
8228839.0  53153.0  32768.0    True
8228841.0  53153.0  32768.0    True
8228843.0  61345.0  32768.0    True
....
8228994.0. 12424.0. 32768.0.   False
jpp

あなたは、リストまたは範囲を作成し、次に使用することができますpd.Index.isinitertools.chain

from itertools import chain

df2 = df2[df2['check']]

ranges = map(range, df2['start'], df2['end'])

df1['check'] = df1.index.isin(chain.from_iterable(ranges))

print(df1)

             flags    input  check
time                              
8228835.0  53153.0  32768.0  False
8228837.0  53153.0  32768.0   True
8228839.0  53153.0  32768.0   True
8228841.0  53153.0  32768.0   True
8228843.0  61345.0  32768.0   True

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

列の値に基づいて範囲で満たされた行を持つパンダデータフレームに列を追加する方法

分類Dev

日付範囲に基づいてパンダデータフレームの行をマージする方法

分類Dev

日付列と日付範囲に基づいてパンダのデータフレームを埋める

分類Dev

パンダのデータフレームの別の列の値に基づいて列を追加します

分類Dev

別の列の値に基づいてパンダデータフレームに列を追加する

分類Dev

パンダは、日付範囲と別の列に基づいてデータフレームをフィルタリングします

分類Dev

パンダ:日付に基づいてデータフレームに別の行を入力する

分類Dev

パンダデータフレームのフィールドに基づいて範囲を計算する

分類Dev

他の行の値に基づいてパンダのデータフレーム列を追加する方法

分類Dev

別のデータフレームで見つかった範囲に基づいて、データフレームに列を入力します

分類Dev

パンダ:別のデータフレームの値に基づいて、データフレームに新しい列を追加します

分類Dev

フロートポイントの範囲に基づいてパンダのデータフレームから行を削除する

分類Dev

別のデータフレームでのルックアップに基づいてデータフレームに列を追加するPythonパンダ

分類Dev

別のデータフレームに基づいてパンダのデータフレーム列に値を追加する

分類Dev

パンダを使用して別のデータフレームに基づいてデータフレームに列を追加する

分類Dev

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

分類Dev

別のデータフレームの条件に基づいてパンダのデータフレームにデータを入力する効率的な方法

分類Dev

パンダのgroupbyに基づいたデータフレームの日付の行の追加と入力

分類Dev

パンダは別のデータフレームからの条件に基づいて行を分割します

分類Dev

新しいパンダのデータフレーム列に、行の値に基づいて他の列の名前を入力します

分類Dev

別の列の値に基づいて、パンダデータフレームの1つの列に値を追加します

分類Dev

別のデータフレームに基づいてパンダに新しい列を作成する

分類Dev

別のデータフレームに基づいてパンダデータフレームを生成する

分類Dev

パンダは、別の列の値に基づいて列レベルを追加することにより、データフレームを再形成します

分類Dev

別の列パンダデータフレームに基づいて列値を抽出する

分類Dev

列の値に基づいてパンダデータフレームの行にnanを設定する

分類Dev

PANDAS:別のデータフレームのブール値に基づいてパンダのデータフレーム要素で計算を行います

分類Dev

パンダ:特定の列の文字列値に基づいて、データフレームを個別のデータフレームに分割します

分類Dev

別のデータフレームの値を使用して、列名に基づいてパンダデータフレームの行を乗算します

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

    別のデータフレームでのルックアップに基づいてデータフレームに列を追加するPythonパンダ

  14. 14

    別のデータフレームに基づいてパンダのデータフレーム列に値を追加する

  15. 15

    パンダを使用して別のデータフレームに基づいてデータフレームに列を追加する

  16. 16

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

  17. 17

    別のデータフレームの条件に基づいてパンダのデータフレームにデータを入力する効率的な方法

  18. 18

    パンダのgroupbyに基づいたデータフレームの日付の行の追加と入力

  19. 19

    パンダは別のデータフレームからの条件に基づいて行を分割します

  20. 20

    新しいパンダのデータフレーム列に、行の値に基づいて他の列の名前を入力します

  21. 21

    別の列の値に基づいて、パンダデータフレームの1つの列に値を追加します

  22. 22

    別のデータフレームに基づいてパンダに新しい列を作成する

  23. 23

    別のデータフレームに基づいてパンダデータフレームを生成する

  24. 24

    パンダは、別の列の値に基づいて列レベルを追加することにより、データフレームを再形成します

  25. 25

    別の列パンダデータフレームに基づいて列値を抽出する

  26. 26

    列の値に基づいてパンダデータフレームの行にnanを設定する

  27. 27

    PANDAS:別のデータフレームのブール値に基づいてパンダのデータフレーム要素で計算を行います

  28. 28

    パンダ:特定の列の文字列値に基づいて、データフレームを個別のデータフレームに分割します

  29. 29

    別のデータフレームの値を使用して、列名に基づいてパンダデータフレームの行を乗算します

ホットタグ

アーカイブ