93917


  * 1月1日を抽出したい場合
[code]     df = df.query('日付＋エリア.str.contains("1月1日")')

    
[/code]

  * 1月1日の東京を抽出したい場合
[code]     df = df.query('日付＋エリア.str.contains("1月1日.+東京")')

    
[/code]

もし1月1日の東京と神奈川を抽出したい場合、どのようなコードを書けば良いでしょうか？

[![画像の説明をここに入力](https://i.stack.imgur.com/Icpfk.jpg)](https://i.stack.imgur.com/Icpfk.jpg)


CC BY-SA 4.0
2023-02-20T02:54:49.047
93914
2023-02-20T06:05:32.297
2023-02-20T05:09:09.270
3060
56371
question
python pandas
複数条件の抽出方法

[code]

    dfx = df[df['日付＋エリア'].str.contains(r'^1月1日＿(?:東京|神奈川)＿')]
    print(dfx)
    
[/code]

種類 | 日付＋エリア  
---|---  
1 | 1月1日＿東京＿新宿  
1 | 1月1日＿東京＿八王子  
1 | 1月1日＿神奈川＿横浜  
1 | 1月1日＿神奈川＿藤沢  
  
**追記**

> もし"日付とエリア"に変更したら、
[code]

    import pandas as pd
    
    df = pd.DataFrame({
        '種類': [1] * 18,
        '日付とエリア': [
            '1月1日＿東京＿新宿', '1月2日＿東京＿新宿', '1月3日＿東京＿新宿',
            '1月1日＿東京＿八王子', '1月2日＿東京＿八王子', '1月3日＿東京＿八王子',
            '1月1日＿神奈川＿横浜', '1月2日＿神奈川＿横浜', '1月3日＿神奈川＿横浜',
            '1月1日＿神奈川＿藤沢', '1月2日＿神奈川＿藤沢', '1月3日＿神奈川＿藤沢',
            '1月1日＿千葉＿千葉', '1月2日＿千葉＿千葉', '1月3日＿千葉＿千葉',
            '1月1日＿千葉＿市川', '1月2日＿千葉＿市川', '1月3日＿千葉＿市川',
        ],
    })
    
    dfx = df.query('日付とエリア.str.contains(r"^1月1日＿(?:東京|神奈川)＿")')
    print(dfx)
    
    #    種類          日付とエリア
    # 0     1    1月1日＿東京＿新宿
    # 3     1  1月1日＿東京＿八王子
    # 6     1  1月1日＿神奈川＿横浜
    # 9     1  1月1日＿神奈川＿藤沢
    
[/code]


CC BY-SA 4.0
2023-02-20T04:14:03.260
93917
2023-02-20T06:05:32.297
2023-02-20T06:05:32.297
47127
47127
93914
answer