pandas データフレーム内のパターンに一致するすべての値を、一致したキャプチャ グループを逆にして置き換えようとしています。したがって、次のMouse, Mickey
ように置き換えられますMickey Mouse
データフレームは次のようになります。
+---+---------------+------+------+------+------+------+------+------+------+------+--+--+------+------+------+------+------+------+------+------+------+------+
| | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | | | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
+---+---------------+------+------+------+------+------+------+------+------+------+--+--+------+------+------+------+------+------+------+------+------+------+
| 0 | Mouse, Mickey | None | None | None | None | None | None | None | None | None | | | None | None | None | None | None | None | None | None | None | None |
| 1 | Duck, Donald | None | None | None | None | None | None | None | None | None | | | None | None | None | None | None | None | None | None | None | None |
+---+---------------+------+------+------+------+------+------+------+------+------+--+--+------+------+------+------+------+------+------+------+------+------+
コード:
df.replace(r'(.*),\s+(.*)', r'\2 \1', inplace=True)
出力に変化なし。私は何を間違っていますか?ありがとう!
指定する必要がありますregex=True
。デフォルトでは、DataFrame.replaceメソッドは値を文字通り置き換えます。
df = pd.DataFrame({"A": ["Mouse, Mickey", "Duck, Donald"]})
df.replace(r'(.*),\s+(.*)', r'\2 \1', inplace=True, regex=True)
df
# A
#0 Mickey Mouse
#1 Donald Duck
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加