私は文字列の最初の6文字を取る非常に基本的な機能を持っています。私はそれをDataFrameの列に適用したいと思います。Pandasの基本的な問題を解決するには
コード:
import re
import pandas as pd
import numpy as np
dfp = pd.DataFrame({'A' : [np.NaN,np.NaN,3,4,5,5,3,1,5,np.NaN],
'B' : [1,0,3,5,0,0,np.NaN,9,0,0],
'C' : ['AA1233445','A9875', 'rmacy','Idaho Rx','Ab123455','TV192837','RX','Ohio Drugs','RX12345','USA Pharma'],
'D' : [123456,123456,1234567,12345678,12345,12345,12345678,123456789,1234567,np.NaN],
'E' : ['Assign','Unassign','Assign','Ugly','Appreciate','Undo','Assign','Unicycle','Assign','Unicorn',]})
def six_dig(thing):
return str(thing)[:6]
dfp6= dfp[dfp['C'].apply(six_dig, axis=1)]
しかし、私は得る:TypeError: six_dig() got an unexpected keyword argument 'axis'
私も.map()
を使用してみましたが、同じエラーを取得します。私はaxis=1
を削除した場合
私が取得:KeyError: ["STUFF"] not in index
...
あなたは絶対的に正しいです。小さなステップを省いてくれてありがとう。 @ pansenの答えは、私に何が間違っているかを教えてくれた。 – MattR
@MattR嬉しいです! –