数百行のテキストを含むsourceという列があります。問題は、これらのいくつかをグループ化できるということです。私はパンダのデータフレームでそれを行うのに苦労しています。これが私のコードです:
df.source.replace({
df.source.str.startswith('share', na=False): 'sharePet',
df.source.str.startswith('2012-01-08', na=False): 'shareDate'
})
さらに、これは日付で始まる2行目でも機能しますか?そうでない場合は、テキストである最初の行と他のグループのためにそれを保持することができます。
いくつかのアドバイスが大好きです。
辞書を使用して、次のことを繰り返すことができます。
d = {'share': 'sharePet', '2012-01-08': 'shareDate'}
for k, v in d.items():
df.loc[df['source'].str.startswith(k, na=False), 'source'] = v
パンダstr.startswith
は文字列に対してのみ機能します。を使用して、シリーズに存在するタイプを簡単に確認できますset(map(type, df['source']))
。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加