Как бы вы go подсчитали количество строк в файле CSV, которые содержат каждое уникальное значение в Python? - PullRequest
1 голос
/ 30 апреля 2020

Моя спецификация следующая: написать код для подсчета количества записей, содержащих каждый IP-адрес источника, и количества записей, содержащих каждый IP-адрес назначения. Генерируйте гистограммы для визуализации ваших результатов.

Короче говоря, у меня есть файл CSV с sourceIP и destIP в качестве заголовков. Мне удалось выяснить, сколько уникальных значений существует с:

sIP = data['sourceIP'].nunique()

, но я хочу каким-то образом получить все уникальные IP-адреса и количество раз, которое каждый из них встречается - с чем я могу затем создайте гистограмму.

Я новичок в науке о данных и pandas, и мне не удалось найти какой-либо четкой документации, в которой описано, как эффективно выполнять вышеизложенное. У меня есть некоторые идеи относительно того, как вы могли бы сделать это, перебирая столбец, добавляя уникальные IP-адреса в один массив, частоту каждого в другой и отображая их (вероятно, в виде гистограммы, потому что гистограмма не имеет смысла в этом контексте) однако я чувствую, что это будет ужасно медленно. Любая помощь приветствуется.

Ответы [ 2 ]

1 голос
/ 30 апреля 2020

Надеюсь, ниже приведен пример, который может вам помочь. Просто замените df на ваш фрейм данных, а в столбце A - sourceIP.

import pandas as pd
df = pd.DataFrame(
        {
            'A': [10, 20, 10, 20, 30, 40, 50],
            'B': [11, 21, 10, 21, 30, 40, 50],
        }
    )
print(df['A'].value_counts())
.
0 голосов
/ 30 апреля 2020

Попробуйте следующее:

uniqe_sourceIP =  data['sourceIP'].value_counts()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...