pandas- все статьи тега ➜ страница 8


Случайный выбор строк в кадре данных Pandas

есть ли способ выбрать случайные строки из фрейма данных в панд. в R, используя пакет автомобиля, есть полезная функция some(x, n) который похож на head, но выбирает в этом примере 10 строк случайным образом из x. Я также посмотрел на разделочную документацию, и, похоже, нет ничего эквивалентного. обновление теперь используется версия 20. Существует примерный метод. df.sample(n) ...

панды groupby сортировка внутри групп

Я хочу сгруппировать свой фрейм данных по двум столбцам, а затем отсортировать агрегированные результаты внутри групп. In [167]: df Out[167]: count job source 0 2 sales A 1 4 sales B 2 6 sales C 3 3 sales D 4 7 sales E 5 5 market A 6 3 market B 7 2 market C 8 4 market D 9 1 market E In [168]: df.groupby(['job','source']).agg({'count':sum}) Out[168]: count job source market A 5 B 3 C 2 D ...

python pandas: применение функции с аргументами к ряду

Я хочу применить функцию с аргументами к серии в python pandas: x = my_series.apply(my_function, more_arguments_1) y = my_series.apply(my_function, more_arguments_2) ... The документация описывает поддержку метода apply, но он не принимает никаких аргументов. Есть ли другой метод, который принимает аргументы? Кроме того, мне не хватает простого обходного пути? Обновление (Октябрь 2017): обратите внимание, что поскольку этот вопрос был первоначально задан, что панды apply() теперь позиционн ...

Какие правила используют панды для создания представления и копии?

Я запутался в правилах, которые панды используют при принятии решения о том, что выбор из фрейма данных является копией исходного фрейма данных или представлением на оригинале. если у меня, например, df = pd.DataFrame(np.random.randn(8,8), columns=list('ABCDEFGH'), index=range(1,9)) Я понимаю, что a query возвращает копию так, что-то вроде foo = df.query('2 < index <= 5') foo.loc[:,'E'] = 40 не повлияет на исходный фрейм данных,df. Я также понимаю, что скалярные или именованные срез ...

Строки в фрейме данных, но dtype-это объект

почему панды говорят мне, что у меня есть объекты, хотя каждый элемент в выбранном столбце является строкой - даже после явного преобразования. это мой фрейм данных: <class 'pandas.core.frame.DataFrame'> Int64Index: 56992 entries, 0 to 56991 Data columns (total 7 columns): id 56992 non-null values attr1 56992 non-null values attr2 56992 non-null values attr3 56992 non-null values attr4 56992 non-null values attr5 56992 non-null val ...

Панды процент от общего числа с groupby

это, очевидно, просто,но как numpy newbe я застрял. у меня есть CSV-файл, который содержит 3 столбца, состояние, идентификатор офиса и продажи для этого офиса. Я хочу рассчитать процент продаж на офис в данном штате (общее количество всех процентов в каждом штате составляет 100%). df = pd.DataFrame({'state': ['CA', 'WA', 'CO', 'AZ'] * 3, 'office_id': range(1, 7) * 2, 'sales': [np.random.randint(100000, 999999) for _ in range(1 ...

Панды: найти столбец, имя которого содержит определенную строку

Итак, у меня есть фрейм данных с именами столбцов, и я хочу найти тот, который содержит определенную строку, но точно не соответствует ей. Я ищу 'spike' в именах столбцов, таких как 'spike-2','hey spike','spiked-in' (the 'spike' часть всегда постоянное). Я хочу, чтобы имя столбца возвращалось в виде строки или переменной, поэтому я получаю доступ к столбцу позже с помощью df['name'] или df[name] как обычно. Я пытался найти способы сделать это, но безрезультатно. Какие-нибудь советы? ...

Как определить, содержит ли столбец Pandas определенное значение

Я пытаюсь определить, есть ли запись в столбце панды, которая имеет определенное значение. Я пытался сделать это с помощью if x in df['id']. Я думал, что это работает, за исключением тех случаев, когда я кормил его значение, которое я знал, не было в столбце 43 in df['id'] он все-таки вернулся True. Когда я подмножество в фрейм данных, содержащий только записи, соответствующие отсутствующему идентификатору df[df['id'] == 43] в нем, очевидно, нет записей. Как определить, содержит ли столбец в фре ...

PIP Install Numpy выдает ошибку " кодек ascii не может декодировать байт 0xe2"

У меня есть недавно установленный Ubuntu на недавно построенном компьютере. Я только что установил python-pip с помощью apt-get. Теперь, когда я пытаюсь установить pip Numpy и Pandas, он дает следующую ошибку. Я видел эту ошибку, упомянутую в довольно многих местах на SO и Google, но я не смог найти решение. Некоторые люди упоминают, что это ошибка, некоторые потоки просто мертвы... Что происходит? Traceback (most recent call last): File "/usr/bin/pip", line 9, in <module> load_ent ...

Добавить недостающие даты для панды фрейма данных

мои данные могут иметь несколько событий на заданную дату или никаких событий на дату. Я беру эти события, подсчитываю по дате и строю их. Однако, когда я строю их, мои две серии не всегда совпадают. idx = pd.date_range(df['simpleDate'].min(), df['simpleDate'].max()) s = df.groupby(['simpleDate']).size() В приведенном выше коде idx становится диапазон скажем 30 дат. 09-01-2013 в 09-30-2013 Однако S может быть только 25 или 26 дней, потому что нет событий на указанную дату. Затем я получ ...

панды: извлечение определенных выбранных столбцов из фрейма данных в новый фрейм данных [дубликат]

этот вопрос уже есть ответ здесь: выбор нескольких столбцов в кадре данных pandas 11 ответов У меня есть фрейм данных pandas с 4 столбцами, и я хочу создать новая таблицы данных, что только имеет три колонки. Этот вопрос похож на: извлечение конкретные столбцы из фрейма данных но для панд не R. следующий код не работает, вызывает ошибку и, конечно же, не является панд-способом сделать это. import pand ...

Панды: установка нет. из максимальных строк

у меня проблема с просмотром следующего DataFrame: n = 100 foo = DataFrame(index=range(n)) foo['floats'] = np.random.randn(n) foo проблема в том, что он не печатает все строки по умолчанию в IPython notebook, но мне нужно нарезать, чтобы просмотреть полученные строки. Даже следующая опция не изменяет вывод: pd.set_option('display.max_rows', 500) кто-нибудь знает, как вывести весь массив? ...

Подсчет уникальных значений с панд на группы [дубликат]

этот вопрос уже есть ответ здесь: количество панд (различных) эквивалент 3 ответы мне нужно посчитать уникальные ID значения в каждом domain У меня есть ID, domain 123, 'vk.com' 123, 'vk.com' 123, 'twitter.com' 456, 'vk.com' 456, 'facebook.com' 456, 'vk.com' 456, 'google.com' 789, 'twitter.com' 789, 'vk.com' пробовал df.groupby(['domain', 'ID']).count() Но я хочу получить domain, count vk.com 3 tw ...

панды уникальные значения несколько столбцов

df = pd.DataFrame({'Col1': ['Bob', 'Joe', 'Bill', 'Mary', 'Joe'], 'Col2': ['Joe', 'Steve', 'Bob', 'Bob', 'Steve'], 'Col3': np.random.random(5)}) что является лучшим способом, чтобы вернуть уникальные значения из столбца col1' и 'столбец col2'? требуется 'Bob', 'Joe', 'Bill', 'Mary', 'Steve' ...

как проверить dtype столбца в python pandas

мне нужно использовать различные функции для обработки числовых столбцов и строковых столбцов. То, что я сейчас делаю, действительно глупо: allc = list((agg.loc[:, (agg.dtypes==np.float64)|(agg.dtypes==np.int)]).columns) for y in allc: treat_numeric(agg[y]) allc = list((agg.loc[:, (agg.dtypes!=np.float64)&(agg.dtypes!=np.int)]).columns) for y in allc: treat_str(agg[y]) есть ли более элегантный способ сделать это? Е. Г. for y in agg.columns: if(dtype(agg[y]) == 'strin ...

создание диаграмм рассеяния matplotlib из фреймов данных в панд Python

каков наилучший способ сделать серию диаграмм рассеяния с помощью matplotlib С pandas фрейм данных в Python? например, если у меня есть фрейм данных df что имеет некоторые столбцы интереса, я нахожу себя обычно преобразования все в массивы: import matplotlib.pylab as plt # df is a DataFrame: fetch col1 and col2 # and drop na rows if any of the columns are NA mydata = df[["col1", "col2"]].dropna(how="any") # Now plot with matplotlib vals = mydata.values plt.scatter(vals[:, 0], vals[:, 1]) п ...

Точечные графики в панд / Pyplot: как построить по категориям

Я пытаюсь сделать простой график рассеяния в pyplot, используя объект Pandas DataFrame, но хочу эффективный способ построения двух переменных, но символы диктуются третьим столбцом (ключом). Я пробовал различные способы, используя df.groupby, но не успешно. Ниже приведен пример сценария df. Это окрашивает маркеры в соответствии с "key1", но Id хотел бы видеть легенду с категориями "key1". Я близко? Спасибо. import numpy as np import pandas as pd import matplotlib.pyplot as plt df = pd.DataFrame ...

Объединение столбцов даты и времени с помощью Python pandas

у меня есть панда dataframe со следующими столбцами; Date Time 01-06-2013 23:00:00 02-06-2013 01:00:00 02-06-2013 21:00:00 02-06-2013 22:00:00 02-06-2013 23:00:00 03-06-2013 01:00:00 03-06-2013 21:00:00 03-06-2013 22:00:00 03-06-2013 23:00:00 04-06-2013 01:00:00 как объединить данные ['дата'] и данные ['время'], чтобы получить следующее? Есть ли способ сделать это с помощью pd.to_datetime? Date 01-06-2013 23:00:00 02-06-2013 01:0 ...

масштабирование столбцов фрейма данных pandas с помощью sklearn

у меня есть фрейм данных pandas со столбцами смешанного типа, и я хотел бы применить min_max_scaler sklearn к некоторым столбцам. В идеале, я хотел бы сделать эти преобразования, но не придумал, как это сделать. Я написал следующий код, который работает: import pandas as pd import numpy as np from sklearn import preprocessing scaler = preprocessing.MinMaxScaler() dfTest = pd.DataFrame({'A':[14.00,90.20,90.95,96.27,91.21],'B':[103.02,107.26,110.35,114.23,114.68], 'C':['big','small','big','sm ...

Преобразование времени unix в читаемую дату в Pandas DataFrame

у меня есть фрейм данных с Unix и цены в нем. Я хочу преобразовать столбец индекса так, чтобы он отображался в удобочитаемых датах. Так, например, у меня есть" дата " как 1349633705 в столбце индекса, но я бы хотел, чтобы она отображалась как 10/07/2012 (или по крайней мере 10/07/2012 18:15). Для некоторого контекста вот код, с которым я работаю, и то, что я уже пробовал: import json import urllib2 from datetime import datetime response = urllib2.urlopen('http://blockchain.info/charts/market-pr ...