Преобразование Python из столбца панды в список? - PullRequest
1 голос
/ 08 марта 2019

Мне было интересно, есть ли у меня файл в следующем формате enter image description here и я хочу поместить каждый столбец в список списка, так как у меня более одного предложения: поэтому вывод может выглядеть так

[['Learning centre of The University of Lahore is established for professional development.'], 
 ['These events, destroyed the bond between them.']]

и то же самое для столбца глагола. Это то, что я пытался, но он поместил все в один список, а не список списков

train_fn="/content/data/wiki/wiki1.train.oie"


dfE = pandas.read_csv(train_fn, sep= "\t",
                         header=0,
                         keep_default_na=False)
train_textEI = dfE['word'].tolist()
train_textEI = [' '.join(t.split()) for t in train_textEI]
train_textEI = np.array(train_textEI, dtype=object)[:, np.newaxis]

выводит каждое слово в списке

[['Learning'],['Center'],['of'],['The'],['University'],['of'],
 ['Lahore'],['is'],['established'],['for'],['the'],
 ['professional'],['development'],['.'],['These'],['events'],[','],
 ['destroyed'],['the'],['bond'],['between'],['them'],['.']]

1 Ответ

1 голос
/ 08 марта 2019

создать помощника Series путем сравнения word_id по Series.eq с Series.cumsum, groupby и преобразовать в список, последний преобразовать вывод Series в список :

df = pd.DataFrame({'word_id':[0,1,2,0,1],
                   'word':['a s','ds d','sss dd','d','sd ds']})

L = df.groupby(df['word_id'].eq(0).cumsum())['word'].apply(lambda x: [' '.join(x)]).tolist()
print (L)
[['a s ds d sss dd'], ['d sd ds']]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...