import pandas as pd
data = pd.DataFrame([[']','//','.'],['a2','b2','c2'],['a3','b',']']],columns=['A','B','C'])
test = data['A']str.match('^[\w\d_-]*$')
data = data[test]
出力である
DF = df.dropna()
:あなたは非文字非数文字でOKであれば
A B C
1 a2 b2 c2
2 a3 b ]
、私は最良の方法は、それらの文字の辞書に続いてdata.replaceが続くと思う。
import pandas as pd
import numpy as np
df = pd.DataFrame([[']','//','.'],['a!','b2','c2'],['a3','b!',']']],columns=['A','B','C'])
df
Output:
A B C
0 ] // .
1 a! b2 c2
2 a3 b! ]
remove = {'.':np.nan, '/':np.nan, ']':np.nan} # The format is {'thing to be replaced':'new thing'}
df['A'] = df['A'].replace(remove) # Checks one column
df
Output:
A B C
0 NaN // .
1 a! b2 c2
2 a3 b! ]
df.dropna()
df
Output:
A B C
1 a! b2 c2
2 a3 b! ]
特定の列は必ず交換してください。 dropna()は、任意のNaN値を持つ列を削除します。
警告として、プレースホルダに "str"などのPythonメソッドを使用しないでください。しかし、おそらくここであなたを焼かないでしょう。
迅速な回答ありがとうございます。その中にヌル値はありません。私は "[["、 "\"、 "^"のような文字列を削除したい。 – rilla119