Создание функции с использованием value_counts в цикле for - PullRequest
0 голосов
/ 16 января 2020

Я пытаюсь создать функцию, которая вызывает функцию value_counts для каждой переменной в списке, которую я прохожу через нее. По общему признанию, я понятия не имею, что я делаю, и привел упрощенные учебники "Привет, мир" в качестве примера. Мой пример кода прилагается. Спасибо за вашу помощь.

data1.columns = ['Year', 'Rank', 'Company', 'Revenue', 'Profit']

def vc(*args):
    for x in args:
        value_counts()
    return

vc(['Year', 'Rank', 'Company', 'Revenue', 'Profit'])

Я также пытался

def vc(args):
    for x in args:
        value_counts(x)
    return

vc(['Year', 'Rank', 'Company', 'Revenue', 'Profit'])

Я получаю сообщение о том, что value_counts не определено.

1 Ответ

0 голосов
/ 16 января 2020

Вы не передаете x на value_counts.

for x in args:
        value_counts()

должно быть

for x in args:
        value_counts(x)

Кроме того, vc принимает *args параметр, что означает, что вы не нужно давать ему список. Вы можете позвонить по номеру vc('Year', 'Rank', 'Company', 'Revenue', 'Profit'), и когда вы укажете args внутри vc, вы получите список. Вы можете позвонить vc со списком, как вы делаете сейчас, но вы бы изменили определение def vc(*args) на vc(args), чтобы все совпадало.

Помогает ли это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...