2016-05-02 15 views
2

パンダ系列のstr型が与えられているので、str.splitから返された結果をソートする必要があります。例えばパンダ並べ替えリストstr.split()

、シリーズ

s = pd.Series(['abc,def,ghi','ghi,abc']) 

与えられた私は、結果として

s2 = pd.Series(['abc,def,ghi','abc,ghi']) 

を取得したいと思います。

どうすればいいですか?私はs.str.split(',').sort()のようなものを考えました。しかし、私はパンダでそのような並べ替え機能を見つけることができませんでした。他のアイデア?

もう1つの考え方は、get_dummiesという関数を使用し、列を再配置し、最後にjoin_dummiesのようにすることです。しかし、私はそのような機能を見つけることができませんでしたjoin_dummies

答えて

3

はこれを試してみてください。

In [70]: s.str.split(',').map(lambda x: ','.join(sorted(x))) 
Out[70]: 
0 abc,def,ghi 
1  abc,ghi 
dtype: object 
1

あなたはパンダに非常に有用であるapply機能を使用することができます。

s.apply(lambda x: ','.join(sorted(x.split(',')))) 

0 abc,def,ghi 
1  abc,ghi 
関連する問題