Python 拆分文本列';将行拆分为多行

Python 拆分文本列';将行拆分为多行,python,pandas,nlp,text-processing,Python,Pandas,Nlp,Text Processing,我有这样一个数据集: 我想要的是将状态信息列与其中的名称分开,以创建新的列,一列用于显示的名称,另一列用于各自的注释,然后相应地填充其余的列,如下所示: 我能够清除标点符号和数字的文本,并从状态信息列创建一个字典,名称作为键,注释作为值,但它仍然显示所有名称的整个状态 以下是我迄今为止尝试的代码: names = ['tom','robin'] months = ['jan','feb','mar','apr','may', 'jun','jul','aug','sep','oct','no

我有这样一个数据集:

我想要的是将状态信息列与其中的名称分开,以创建新的列,一列用于显示的名称,另一列用于各自的注释,然后相应地填充其余的列,如下所示:

我能够清除标点符号和数字的文本,并从状态信息列创建一个字典,名称作为键,注释作为值,但它仍然显示所有名称的整个状态

以下是我迄今为止尝试的代码:

names = ['tom','robin']
months = ['jan','feb','mar','apr','may', 'jun','jul','aug','sep','oct','nov','dec',
          'january','february','march','april','june','july','august','september',
'october','november','december']


a = data['Status information'][3].lower()
b = [char for char in a if char not in string.digits]
b = ''.join(b)

for i in months:
    if b.find(i) != -1:
        b= b.replace(i,' ')

for i in string.punctuation:
    if b.find(i) != -1:
        b= b.replace(i,' ')
x={} 
for i in names:
    if b.find(i) != -1:
        x[i] = b.split(i)
        
print(b)
print(x)
输出:

tom  i want only server    robin cal busy    robin reg for server
{'tom': ['   ', '  i want only server    robin cal busy    robin reg for server'], 
'robin': ['   tom  i want only server    ', ' cal busy    ', ' reg for server']}

你能添加你尝试过的代码吗?我只是分享了我尝试过的部分代码,这甚至是可能的???