1
すべて!データフレーム列の値のセット
私はデータフレームを持っています。 1つの列には、 'Product1、Product2、foo、bar'のような文字列が含まれています。
私はそれらを '、'で分割しましたが、今では製品名のリストを含む列があります。
どのようにして一意の製品名を取得できますか?
すべて!データフレーム列の値のセット
私はデータフレームを持っています。 1つの列には、 'Product1、Product2、foo、bar'のような文字列が含まれています。
私はそれらを '、'で分割しましたが、今では製品名のリストを含む列があります。
どのようにして一意の製品名を取得できますか?
まず、リストのリストを平らその後、list
にset
と最後の変換を適用します。
df = pd.DataFrame(data = {'a':['Product1,Product1,foo,bar','Product1,foo,foo,bar']})
print (df)
a
0 Product1,Product1,foo,bar
1 Product1,foo,foo,bar
a=list(set([item for sublist in df['a'].str.split(',').values.tolist() for item in sublist]))
print (a)
['bar', 'foo', 'Product1']
行ごとに一意の値たい場合:
df = df['a'].str.split(',').apply(lambda x: list(set(x)))
print (df)
0 [bar, foo, Product1]
1 [bar, foo, Product1]
Name: a, dtype: object
を