Найти - Пользователи
Полная версия: помогите с теорией
Начало » Python для новичков » помогите с теорией
1
e.ilyich
Есть задача: “Напишите функцию user_genres, которая принимает некую группировку как свой аргумент group. Функция должна перебирать группы, входящие в эту группировку.
В каждой группе два элемента — имя группы с индексом 0 и список значений с индексом 1.
Обнаружив такую группу, в которой список (элемент с индексом 1) содержит более 50 значений, функция возвращает имя группы (значение элемента с индексом 0).”

 import pandas as pd
df = pd.read_csv('music_log_upd.csv')
def user_genres(group):
	for col in group:
		if col[1].count() > 50:  # назначьте условие: если длина столбца col с индексом 1 больше 50, тогда
			user = col[0]  # в переменной user сохраняется элемент col[0]
			return user

После некоторых затруднений я решил задачу, но скорей методом тыка. Код работает. Но, видимо, в целом я не очень разобрался как работать с типом данных Series. Я не понимаю как устроена индексация, почему col1 и col0 а не наоборот, что из чего вытекает? Пожалуйста, объясните механизм действия этой функции на пальцах.
py.user.next
e.ilyich
Есть задача: “Напишите функцию user_genres, которая принимает некую группировку как свой аргумент group. Функция должна перебирать группы, входящие в эту группировку.
В каждой группе два элемента — имя группы с индексом 0 и список значений с индексом 1.
Обнаружив такую группу, в которой список (элемент с индексом 1) содержит более 50 значений, функция возвращает имя группы (значение элемента с индексом 0).”
  
>>> def user_genres(group):
...     group_values_max = 50
...     for group_name, group_values in group:
...         if len(group_values) > group_values_max:
...             return group_name
...     return None
... 
>>> lst = [['name1', ['value'] * 10],
...        ['name2', ['value'] * 20],
...        ['name3', ['value'] * 60],
...        ['name4', ['value'] * 30]]
>>> 
>>> user_genres(lst)
'name3'
>>>
e.ilyich
Спасибо! примерно понял.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB