Пожалуйста, помогите, я чрезвычайно застрял !!!!
1) Напишите функцию, которая занимает одну строку и возвращает список двумерных кортежей. Например, для строки 0 возвращается: [(«Действие», 7.9), («Приключение», 7.9), («Фэнтези», 7.9), («Научная фантастика», 7.9)]. Проверьте свою функцию в строке 0, используя имя_функции (df.iloc [0,:]).
2). Используйте метод apply () для всех строк, чтобы создать один список, содержащий все 2-мерные кортежи
3). Преобразуйте список кортежей в фрейм данных
это мои данные картинка
df = pd.DataFrame ({'genres': ['Action | Adventure | Fantasy | Sci-Fi ',' Action | Adventure | Fantasy '],' imdb_score ': [7.9,7.1]})
Я знаю этот пост Как написать функцию, которая занимает одну строку и возвращает список двумерных кортежей Похож на мой вопрос, но функция там не работает, когда я использую метод apply или метод df.apply (lambda, x:…)
. пробовал
`def R(row):
LT = [(x, i) for g,i in (row['genres'], row['imdb_score']) for x in g]
return LT`
и
первая функция не работает для
`df.apply(lambda x: func(x),axis=1)`
`l = []
def get_genres(row):
row['genres'] = row['genres'].split('|')
x = row['genres']
y = row['imdb_score']
for y in len(row['genres']):
print( x,y )
z = (x,y)
l.append(z)
return l`