将行条目中的单词提取到 pandas 数据帧中的列



我是熊猫和蟒蛇的新手。

我的数据帧如下所示:

Search query             Impressions         Clicks
iPhone X 2019            10000               50
iPhoneX 2019             15                  64
iPhone 11                60                  87
Nokia 3310               444                 61
Nokia 3310 best phone    1                   30

我正在尝试创建另一名为Word的列,该列将具有每个Search query行中每个单词的值。

例:

Search query             Impressions         Clicks         Word
iPhone X 2019            10000               50             iPhone
iPhone X 2019            10000               50             X
iPhone X 2019            10000               50             2019
iPhoneX 2019             15                  64             iPhoneX
iPhoneX 2019             15                  64             2019
iPhone 11                60                  87             iPhone
iPhone 11                60                  87             11
Nokia 3310               444                 61             Nokia
Nokia 3310               444                 61             3310
Nokia 3310 best phone    1                   30             Nokia
Nokia 3310 best phone    1                   30             3310
Nokia 3310 best phone    1                   30             best
Nokia 3310 best phone    1                   30             phone

因此,每行乘以第Search query列中的字符串数,第Word列将保存列中的每个字符串Search query

我尝试过:

def f(x):
x = x.split(' ')
y = len(x)
# at this point I am not sure how I would apply the multiplication and assign each word in 'Word' column once every word

感谢您的建议。

创建新列Word由拆分值填充并DataFrame.explode它们,最后将值转换为默认索引:

df = df.assign(Word = df['Search query'].str.split()).explode('Word').reset_index(drop=True)
print (df)
Search query  Impressions  Clicks     Word
0           iPhone X 2019        10000      50   iPhone
1           iPhone X 2019        10000      50        X
2           iPhone X 2019        10000      50     2019
3            iPhoneX 2019           15      64  iPhoneX
4            iPhoneX 2019           15      64     2019
5               iPhone 11           60      87   iPhone
6               iPhone 11           60      87       11
7              Nokia 3310          444      61    Nokia
8              Nokia 3310          444      61     3310
9   Nokia 3310 best phone            1      30    Nokia
10  Nokia 3310 best phone            1      30     3310
11  Nokia 3310 best phone            1      30     best
12  Nokia 3310 best phone            1      30    phone

相关内容

  • 没有找到相关文章