DataFrame全体の値の一部を置換できない
前提・実現したいこと
- DataFrame全体の値の一部を置換したい(サンプルの〇を除去して数字のみにしたい)場合どうすればいいのでしょうか?
- DataFrame.replace()は値が同じ場合のみ置換、一部ヒットは置換できない?
- DataFrame.replace(regex = True)はどうして置換できるのか?正規表現で一部ヒットするため置換できる?
よろしくお願いします。
該当のソースコード
python
1import pandas as pd 2 3data = [[f"○{y}{x}" for x in range(10)] for y in range(10)] 4 5df = pd.DataFrame(data) 6 7df1 = df.copy() 8 9# 置換できない 10df1.replace("○", "") 11 12# 置換できる 13df1.replace("○", "", regex = True)
試したこと
Seriesなら.str.replaceで置換できる
python
1df1[0].str.replace("○", "")
DataFrameでも値が置換する値と同じなら置換できる
python
1import pandas as pd 2 3data = [["○" for x in range(10)] for y in range(10)] 4 5df = pd.DataFrame(data) 6 7df1 = df.copy() 8 9df1.replace("○", "")
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/11 00:48