IIUC sollten folgende arbeiten:
In [160]:
df2 = pd.DataFrame(df['Var_1'].str.split(';',expand=True).stack().unique(), columns=['Var_2'])
df2
Out[160]:
Var_2
0 201601_abc
1 201603_tbc
2 201608_sdf
3 201508_dsf
Diese die Werte auf dem Begrenzer teilt, dann stack
s und gibt die unique
Werte können wir dann ein neues df bauen auf dem zurückgegebenen Array basierten
Splitting die obigen Schritte:
In [161]:
df['Var_1'].str.split(';',expand=True)
Out[161]:
0 1 2
0 201601_abc None None
1 201603_tbc 201608_sdf 201508_dsf
2 201601_abc 201508_dsf None
In [162]:
df['Var_1'].str.split(';',expand=True).stack()
Out[162]:
0 0 201601_abc
1 0 201603_tbc
1 201608_sdf
2 201508_dsf
2 0 201601_abc
1 201508_dsf
dtype: object
In [163]:
df['Var_1'].str.split(';',expand=True).stack().unique()
Out[163]:
array(['201601_abc', '201603_tbc', '201608_sdf', '201508_dsf'], dtype=object)
Was meinst du mit Datenrahmen (ist es Pandas?) Was hast du bis jetzt versucht? Wenn Sie eine verschachtelte Liste verwenden, können Sie sie reduzieren. – Thiru