質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

3回答

8261閲覧

DataFrameから大文字、小文字を区別しないで抽出する方法

melbo

総合スコア62

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

1クリップ

投稿2020/08/17 03:04

pandasのDataFrame(df)の"得意先"の名称が"ABC corporation"であるデータを抽出したく次のようにしました。

df1 = df.query('得意先=="ABC corporation"')

しかし、これだと完全に一致しているものしか抽出されません。
得意先名が大文字でも小文字でも関係なく抽出するにはどうすればよいのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

"得意先.str.lower() == '会社名'.lower()" でできると思います。

query() するときに両方とも小文字にして比較

python

1import pandas as pd 2 3df = pd.DataFrame({"得意先": ["ABC mart", "abc mart", "abc Mart"]}) 4df2 = df.query("得意先.str.lower() == 'abc mart'.lower()")

投稿2020/08/17 04:14

編集2020/08/17 05:38
tiitoi

総合スコア21956

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tiitoi

2020/08/17 04:15

すいません。重複しました。
melbo

2020/08/17 05:23

tiitoiさん ありがとうございます。 すでにデータフレーム(df)はできており、列項目に" 得意先", "担当者", "売上","入力日"とあり、このうちの"得意先"において会社名を絞りたいと思います。
tiitoi

2020/08/17 05:37 編集

回答のコードでできなかったですか? df1 = df.query("得意先.str.lower() == 'ABC corporation'.lower()")
melbo

2020/08/17 05:50

すみません。できました! ありがとうございます。
guest

0

得意先の列を大文字に変換した作業列を作ってみるのはどうでしょうか?

Python

1df['得意先(大文字)'] = df['得意先'].str.upper() 2df1 = df.query('得意先(大文字)=="ABC CORPORATION"') 3

投稿2020/08/17 04:12

autumn_nsn

総合スコア335

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

melbo

2020/08/17 05:26

autumn_nsnさん ありがとうございます。 得意先の文字列が、大文字と小文字が混ざった状態でどんな形で出てくるかわからない状態です。
guest

0

下の2つのやり良い方で試されてはいかがでしょうか。

あらかじめ大文字・小文字を統一するよう一括処理するか
pandas
文字列の大文字化

区別しないで検索するか

引数case: 大文字小文字の処理

デフォルトでは大文字と小文字は区別して処理される。引数caseをFalseとすると大文字小文字が区別されない。
pandasで特定の文字列を含む行を抽出(完全一致、部分一致)

投稿2020/08/17 04:10

jeanbiego

総合スコア3966

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

melbo

2020/08/17 05:38

jeanbiegoさん ありがとうございます。 得意先名に大文字と小文字が混ざった状態でも抽出して、新たなデータフレームを作成したいのですが、参考記事を読んで勉強してみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問