#python #pandas
#python #панды
Вопрос:
я хочу выполнить итерацию по строкам столбца (тип: серия), каждая строка представляет собой серию слов, и я хочу классифицировать каждое слово.
примеры некоторых строк:
['hard', 'house', 'warm', 'lovely']
['beauty', morning', 'work', 'sick']
у меня есть следующий код :
for i, row in df['splitsent'].items():
test=i['splitsent']
я получаю эту ошибку :
' test_set=i['stoplist']
TypeError: 'int' object is not subscriptable '
Комментарии:
1. Не могли бы вы добавить желаемый результат
2. желаемый результат: {‘hard’: ‘neg’, ‘house’:’neu’, ‘warm’:’pos’, ‘lovely’:’pos’} {‘beauty’:’pos’, morning’:’neu’, ‘work’:’neu’, ‘sick’:’neg’} я определил положительные и отрицательные функции, train_set и функцию, которая возвращает словари, и это работает. но на этом уровне кода я хочу определить каждую строку (серию) как test_set
Ответ №1:
Это iterrows
for x , y in df.iterrows():
print(x)#index
print(y)#serise row
Если это серия
for x,y in zip(df.index,df.Value):#df.Value.iterrows()
print(x)#index
print(y)#value
Комментарии:
1.
Series
имеетiteritems
для индекса значение
Ответ №2:
строка — это данные. i — целочисленный индекс: 0, 1, 2, … так что
i['splitsent']
не имеет смысла для целого числа, i.
Комментарии:
1. я хотел сделать так, чтобы каждая строка была ранжирована: row1 [‘splitsent’], row2 [‘splitsent’], поэтому я поставил i [‘splitsent’]