如何通过sql或python从包含字符串列表列的表中获取表

7ivaypg9  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(354)

我的table如下

eventID countries
aaffff. Japan, US, Frunce
aafggg. Japan, Frunce

我想换张新table

eventID countries
aaffff. Japan
aaffff. US
aaffff. Frunce
aafggg. Japan
aafggg. Frunce

由于我不知道有多少字符串,我将在国家列的功能分裂的部分不会帮助我。如果有更好的方法用python来实现,我会很高兴听到。

ddarikpa

ddarikpa1#

In [24]: a = [{"eventID":"aaffff","countries":"Japan, US, Frunce"},{"eventID":"aafggg","countries":"Japan, Frunce"}]

In [25]: df = pd.DataFrame(a)

In [26]: df
Out[26]:
  eventID          countries
0  aaffff  Japan, US, Frunce
1  aafggg      Japan, Frunce

In [28]: df["countries"] = df["countries"].str.split(",")

In [29]: df
Out[29]:
  eventID              countries
0  aaffff  [Japan,  US,  Frunce]
1  aafggg       [Japan,  Frunce]

In [30]: df.explode("countries")
Out[30]:
  eventID countries
0  aaffff     Japan
0  aaffff        US
0  aaffff    Frunce
1  aafggg     Japan
1  aafggg    Frunce

相关问题