pandas.DataFrame
-
class pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)[source] -
Двумерная структура данных с изменяемым размером, потенциально гетерогенная таблица данных с маркированными осями (строки и столбцы). Арифметические операции выравниваются по меткам строк и столбцов. Можно рассматривать как контейнер типа dict для объектов Series. Основная структура данных pandas
Параметры: data : numpy ndarray (структурированный или однородный), dict или DataFrame
Dict может содержать Series, массивы, константы или объекты типа list-like
index : Index или массив-подобный объект
Индекс для использования в результирующей таблице. Будет по умолчанию равен np.arange(n), если нет информации об индексации в входных данных и индекс не указан
columns : Index или массив-подобный объект
Метки столбцов для использования в результирующей таблице. Будет по умолчанию равен np.arange(n), если метки столбцов не указаны
dtype : dtype, по умолчанию None
Тип данных для принудительного применения. Допускается только один тип dtype. Если None, определяется автоматически
copy : boolean, по умолчанию False
Скопировать данные из входных данных. Затрагивает только входные данные DataFrame / 2d ndarray
См. также
-
DataFrame.from_records - конструктор из кортежей, также массивы записей
-
DataFrame.from_dict - из словарей Series, массивов или словарей
-
DataFrame.from_items - из последовательности пар (ключ, значение)
Примеры
Создание DataFrame из словаря.
>>> d = {'col1': [1, 2], 'col2': [3, 4]} >>> df = pd.DataFrame(data=d) >>> df col1 col2 0 1 3 1 2 4Обратите внимание, что выведенный тип данных — int64.
>>> df.dtypes col1 int64 col2 int64 dtype: object
Для принудительного применения одного типа данных:
>>> df = pd.DataFrame(data=d, dtype=np.int8) >>> df.dtypes col1 int8 col2 int8 dtype: object
Создание DataFrame из массива numpy ndarray:
>>> df2 = pd.DataFrame(np.random.randint(low=0, high=10, size=(5, 5)), ... columns=['a', 'b', 'c', 'd', 'e']) >>> df2 a b c d e 0 2 8 8 3 4 1 4 2 9 0 9 2 1 0 7 8 0 3 5 1 7 1 3 4 6 0 2 4 2Атрибуты
TТранспонировать индекс и столбцы atБыстрый скалярный доступ по меткам axesВозвращает список с метками оси строк и метками оси столбцов как единственными членами. blocksВнутреннее свойство, синоним свойства для as_blocks() dtypesВозвращает типы данных в этом объекте. emptyTrue, если NDFrame полностью пуст [нет элементов], т. е. любая из осей имеет длину 0. ftypesВозвращает ftypes (указание на разреженность/плотность и тип данных) в этом объекте. iatБыстрый скалярный доступ по целочисленному местоположению. ilocИндексация, основанная только на целочисленных местоположениях, для выбора по позиции. is_copyixИндексатор, в основном основанный на метках и местоположениях, с возвратом целочисленной позиции по умолчанию. locИндексатор, основанный исключительно на метках местоположений, для выбора по меткам. ndimКоличество осей/размерностей массива shapeВозвращает кортеж, представляющий размерность DataFrame. sizeКоличество элементов в NDFrame styleСвойство, возвращающее объект Styler, содержащий методы для создания стилизованного HTML-представления DataFrame. valuesПредставление NDFrame в виде массива NumPy Методы
-
abs()Возвращает объект с абсолютным значением — применимо только к объектам, которые являются чисто числовыми. add(other[, axis, level, fill_value])Сложение DataFrame и other, поэлементно (бинарная операция add).add_prefix(prefix)Конкатенация префиксной строки с именами элементов панели. add_suffix(suffix)Конкатенация суффиксной строки с именами элементов панели. agg(func[, axis])Агрегирование с использованием вызываемого объекта, строки, словаря или списка строк/вызываемых объектов aggregate(func[, axis])Агрегирование с использованием вызываемого объекта, строки, словаря или списка строк/вызываемых объектов align(other[, join, axis, level, copy, ...])Выравнивание двух объектов по их осям с помощью all([axis, bool_only, skipna, level])Возвращает True, если все элементы по указанной оси равны True any([axis, bool_only, skipna, level])Возвращает True, если любой элемент по указанной оси равен True append(other[, ignore_index, verify_integrity])Добавляет строки из otherв конец этой таблицы, возвращая новый объект.apply(func[, axis, broadcast, raw, reduce, args])Применение функции вдоль входной оси DataFrame. applymap(func)Применение функции к DataFrame, предназначенной для работы поэлементно, т. е. as_blocks([copy])Преобразование таблицы в словарь типа dtype -> Типы конструкторов, каждый из которых имеет однородный тип. as_matrix([columns])Преобразование таблицы в ее представление в виде массива NumPy. asfreq(freq[, method, how, normalize, ...])Преобразование TimeSeries к указанной частоте. asof(where[, subset])Берется последняя строка без NaN (или последняя строка без assign(**kwargs)Назначение новых столбцов DataFrame, возвращающее новый объект (копию) со всеми исходными столбцами в дополнение к новым. astype(dtype[, copy, errors])Приведение типа pandas объекта к указанному типу dtype.at_time(time[, asof])Выбор значений в определенное время суток (например, between_time(start_time, end_time[, ...])Выбор значений между определенными временами суток (например, 9:00-9:30 утра). bfill([axis, inplace, limit, downcast])Синоним для DataFrame.fillna(method='bfill')bool()Возвращает булево значение для одного элемента PandasObject. boxplot([column, by, ax, fontsize, rot, ...])Построение диаграммы размаха из столбца DataFrame, при необходимости сгруппированного по некоторым столбцам или clip([lower, upper, axis, inplace])Обрезка значений по входным порогам. clip_lower(threshold[, axis, inplace])Возвращает копию входных данных с усеченными значениями, которые ниже заданного значения(й). clip_upper(threshold[, axis, inplace])Возвращает копию входных данных с усеченными значениями, которые выше заданного значения(й). combine(other, func[, fill_value, overwrite])Добавление двух DataFrame-объектов и не распространение значений NaN, поэтому если для combine_first(other)Объединение двух DataFrame-объектов и использование не-null значений в таблице, вызвавшей метод. compound([axis, skipna, level])Возвращает составной процент значений для указанной оси consolidate([inplace])УСТАРЕЛО: consolidate будет только внутренней реализацией. convert_objects([convert_dates, ...])Устарело. copy([deep])Создает копию данных этого объекта. corr([method, min_periods])Вычисляет парную корреляцию столбцов, исключая NA/null значения corrwith(other[, axis, drop])Вычисляет парную корреляцию между строками или столбцами двух DataFrame-объектов. count([axis, level, numeric_only])Возвращает Series с количеством не-NA/null наблюдений по указанной оси. cov([min_periods])Вычисляет парную ковариацию столбцов, исключая NA/null значения cummax([axis, skipna])Возвращает кумулятивный максимум по указанной оси. cummin([axis, skipna])Возвращает кумуляльный минимум по указанной оси. cumprod([axis, skipna])Возвращает кумулятивное произведение по указанной оси. cumsum([axis, skipna])Возвращает кумулятивную сумму по указанной оси. describe([percentiles, include, exclude])Генерирует описательные статистики, которые обобщают центральную тенденцию, дисперсию и форму распределения набора данных, исключая NaNзначения.diff([periods, axis])Дискретное разностное значение 1-го порядка объекта div(other[, axis, level, fill_value])Деление с плавающей запятой DataFrame и other, поэлементно (бинарная операция truediv).divide(other[, axis, level, fill_value])Деление с плавающей запятой DataFrame и other, поэлементно (бинарная операция truediv).
dot(other)Умножение матриц с объектами DataFrame или Series drop([labels, axis, index, columns, level, ...])Возвращает новый объект с удалёнными метками в запрошенной оси. drop_duplicates([subset, keep, inplace])Возвращает DataFrame с удалёнными дублирующими строками, необязательно только dropna([axis, how, thresh, subset, inplace])Возвращает объект с пропущенными метками на заданной оси, где поочерёдно любые duplicated([subset, keep])Возвращает булеву серию, обозначающую дублирующие строки, необязательно только eq(other[, axis, level])Обёртка для гибких методов сравнения eq equals(other)Определяет, содержат ли два объекта NDFrame одинаковые элементы. eval(expr[, inplace])Вычисляет выражение в контексте экземпляра вызывающего DataFrame. ewm([com, span, halflife, alpha, ...])Предоставляет экспоненциально взвешенные функции expanding([min_periods, freq, center, axis])Предоставляет расширяющие преобразования. ffill([axis, inplace, limit, downcast])Синоним для DataFrame.fillna(method='ffill')fillna([value, method, axis, inplace, ...])Заполнение значений NaN/NA указанным методом filter([items, like, regex, axis])Подмножество строк или столбцов DataFrame в соответствии с метками в указанном индексе. first(offset)Удобный метод для подмножества начальных периодов данных временных рядов на основе временного сдвига. first_valid_index()Возвращает индекс для первого не-NA/null значения. floordiv(other[, axis, level, fill_value])Целочисленное деление DataFrame и other, поэлементно (бинарная операция floordiv).from_csv(path[, header, sep, index_col, ...])Чтение CSV-файла (УСТАРЕЛО, используйте pandas.read_csv()вместо этого).from_dict(data[, orient, dtype])Конструирование DataFrame из словаря массивоподобных объектов или словарей from_items(items[, columns, orient])Преобразование пар (ключ, значение) в DataFrame. from_records(data[, index, exclude, ...])Преобразование структурированного или массива записей в DataFrame ge(other[, axis, level])Обёртка для гибких методов сравнения ge get(key[, default])Получение элемента из объекта для заданного ключа (столбец DataFrame, срез Panel и т. д.). get_dtype_counts()Возвращает счётчики типов данных в этом объекте. get_ftype_counts()Возвращает счётчики типов данных ftypes в этом объекте. get_value(index, col[, takeable])Быстрое извлечение единственного значения в переданном столбце и индексе get_values()то же самое, что и значения (но обрабатывает преобразования разреженности) groupby([by, axis, level, as_index, sort, ...])Группировка серии с помощью сопоставления (словарь или функция ключа, применение заданной функции к группе, возврат результата в виде серии) или по ряду столбцов. gt(other[, axis, level])Обёртка для гибких методов сравнения gt head([n])Возвращает первые n строк. hist(data[, column, by, grid, xlabelsize, ...])Рисует гистограмму серии DataFrame с использованием matplotlib/pylab. idxmax([axis, skipna])Возвращает индекс первого вхождения максимума по запрошенной оси. idxmin([axis, skipna])Возвращает индекс первого вхождения минимума по запрошенной оси. infer_objects()Попытка вывода более подходящих типов данных для столбцов object. info([verbose, buf, max_cols, memory_usage, ...])Краткое описание DataFrame. insert(loc, column, value[, allow_duplicates])Вставка столбца в DataFrame в указанном месте. interpolate([method, axis, limit, inplace, ...])Интерполяция значений в соответствии с различными методами. isin(values)Возвращает булевый DataFrame, показывающий, содержится ли каждый элемент в DataFrame в values. isna()Возвращает объект той же размерности, являющийся булевым значением, указывающим, являются ли значения NA. isnull()Возвращает объект той же размерности, являющийся булевым значением, указывающим, являются ли значения NA. items()Итератор по парам (имя столбца, Series). iteritems()Итератор по парам (имя столбца, Series). iterrows()Итерация по строкам DataFrame как пары (индекс, Series). itertuples([index, name])Итерация по строкам DataFrame в виде именованных кортежей, со значением индекса в качестве первого элемента кортежа. join(other[, on, how, lsuffix, rsuffix, sort])Объединение столбцов с другим DataFrame по индексу или по столбцу ключа.
keys()Получить «ось инфо» (см. Индексирование для более подробной информации) kurt([axis, skipna, level, numeric_only])Возвращает смещённую эксцесс по указанной оси, используя определение эксцесса Фишера (эксцесс нормального распределения == 0.0). kurtosis([axis, skipna, level, numeric_only])Возвращает смещённую эксцесс по указанной оси, используя определение эксцесса Фишера (эксцесс нормального распределения == 0.0). last(offset)Удобный метод для выделения конечных периодов временных рядов данных, основанных на временном сдвиге. last_valid_index()Возвращает индекс последнего не-NA/null значения. le(other[, axis, level])Оборачивает гибкие методы сравнения le lookup(row_labels, col_labels)Функция «fancy indexing» на основе меток для DataFrame. lt(other[, axis, level])Оборачивает гибкие методы сравнения lt mad([axis, skipna, level])Возвращает среднее абсолютное отклонение значений для указанной оси. mask(cond[, other, inplace, axis, level, ...])Возвращает объект той же формы, что и self, значения в котором соответствуют значениям из self, где condложно, а в противном случае — изother.max([axis, skipna, level, numeric_only])Этот метод возвращает максимальное значение в объекте. mean([axis, skipna, level, numeric_only])Возвращает среднее значение значений для указанной оси. median([axis, skipna, level, numeric_only])Возвращает медиану значений для указанной оси. melt([id_vars, value_vars, var_name, ...])«Преобразует» DataFrame из широкой формы в длинную форму, необязательно memory_usage([index, deep])Использование памяти столбцами DataFrame. merge(right[, how, on, left_on, right_on, ...])Объединение объектов DataFrame путём выполнения операции присоединения в стиле базы данных по столбцам или индексам. min([axis, skipna, level, numeric_only])Этот метод возвращает минимальное значение в объекте. mod(other[, axis, level, fill_value])Модуль dataframe и other, поэлементно (бинарная операция mod).mode([axis, numeric_only])Получает моду(и) каждого элемента вдоль выбранной оси. mul(other[, axis, level, fill_value])Умножение dataframe и other, поэлементно (бинарная операция mul).multiply(other[, axis, level, fill_value])Умножение dataframe и other, поэлементно (бинарная операция mul).ne(other[, axis, level])Оборачивает гибкие методы сравнения ne nlargest(n, columns[, keep])Получение строк DataFrame, отсортированных по nнаибольшим значениямcolumns.notna()Возвращает булевый объект того же размера, указывающий, не являются ли значения NA. notnull()Возвращает булевый объект того же размера, указывающий, не являются ли значения NA. nsmallest(n, columns[, keep])Получение строк DataFrame, отсортированных по nнаименьшим значениямcolumns.nunique([axis, dropna])Возвращает Series с количеством уникальных наблюдений по указанной оси. pct_change([periods, fill_method, limit, freq])Процентное изменение за заданное количество периодов. pipe(func, *args, **kwargs)Применить func(self, *args, **kwargs) pivot([index, columns, values])Переформатирование данных (создание «таблицы сводки») на основе значений столбцов. pivot_table([values, index, columns, ...])Создание сводной таблицы в стиле электронных таблиц в виде DataFrame. plotПсевдоним FramePlotMethodspop(item)Возвращает элемент и удаляет его из фрейма. pow(other[, axis, level, fill_value])Экспоненциальная степень dataframe и other, поэлементно (бинарная операция pow).prod([axis, skipna, level, numeric_only, ...])Возвращает произведение значений для указанной оси. product([axis, skipna, level, numeric_only, ...])Возвращает произведение значений для указанной оси. quantile([q, axis, numeric_only, interpolation])Возвращает значения в заданном квантиле по указанной оси, аналогично numpy.percentile. query(expr[, inplace])Запрос столбцов фрейма с булевым выражением. radd(other[, axis, level, fill_value])Сложение dataframe и other, поэлементно (бинарная операция radd).rank([axis, method, numeric_only, ...])Вычисление рангов числовых данных (от 1 до n) вдоль оси. rdiv(other[, axis, level, fill_value])Переменная деление dataframe и other, поэлементно (бинарная операция rtruediv).reindex([labels, index, columns, axis, ...])Приведение DataFrame к новому индексу с необязательной логикой заполнения, размещая NA/NaN в местах, не имеющих значения в предыдущем индексе. reindex_axis(labels[, axis, method, level, ...])Приведение входного объекта к новому индексу с необязательной логикой заполнения, размещая NA/NaN в местах, не имеющих значения в предыдущем индексе.
reindex_like(other[, method, copy, limit, ...])Возвращает объект с соответствующими индексами для себя. rename([mapper, index, columns, axis, copy, ...])Изменить метки осей. rename_axis(mapper[, axis, copy, inplace])Изменить имя индекса или столбцов. reorder_levels(order[, axis])Переупорядочить уровни индекса в соответствии с заданным порядком. replace([to_replace, value, inplace, limit, ...])Заменить значения, указанные в ‘to_replace’, на ‘value’. resample(rule[, how, axis, fill_method, ...])Удобный метод для преобразования частоты и ресемплирования временных рядов. reset_index([level, drop, inplace, ...])Для DataFrame с многоуровневым индексом возвращает новый DataFrame с информацией о маркировке в столбцах под именами индексов, по умолчанию 'level_0', 'level_1' и т. д. rfloordiv(other[, axis, level, fill_value])Целочисленное деление DataFrame и other поэлементно (бинарная операция rfloordiv).rmod(other[, axis, level, fill_value])Остаток от деления DataFrame и other поэлементно (бинарная операция rmod).rmul(other[, axis, level, fill_value])Умножение DataFrame и other поэлементно (бинарная операция rmul).rolling(window[, min_periods, freq, center, ...])Предоставляет вычисления скользящего среднего. round([decimals])Округляет DataFrame до заданного количества знаков после запятой. rpow(other[, axis, level, fill_value])Возведение в степень DataFrame и other поэлементно (бинарная операция rpow).rsub(other[, axis, level, fill_value])Вычитание DataFrame и other поэлементно (бинарная операция rsub).rtruediv(other[, axis, level, fill_value])Деление с плавающей точкой DataFrame и other поэлементно (бинарная операция rtruediv).sample([n, frac, replace, weights, ...])Возвращает случайную выборку элементов из оси объекта. select(crit[, axis])Возвращает данные, соответствующие меткам оси, удовлетворяющим критериям. select_dtypes([include, exclude])Возвращает подмножество DataFrame, включающее/исключающее столбцы на основе их dtype.sem([axis, skipna, level, ddof, numeric_only])Возвращает несмещенную стандартную ошибку среднего по запрошенной оси. set_axis(labels[, axis, inplace])Назначить желаемый индекс заданной оси. set_index(keys[, drop, append, inplace, ...])Установить индекс DataFrame (метки строк) с использованием одного или нескольких существующих столбцов. set_value(index, col, value[, takeable])Поместить единственное значение в указанный столбец и индекс. shift([periods, freq, axis])Сдвинуть индекс на необходимое количество периодов с опциональной временной частотой. skew([axis, skipna, level, numeric_only])Возвращает несмещенный коэффициент асимметрии по запрошенной оси. slice_shift([periods, axis])Эквивалентно shiftбез копирования данных.sort_index([axis, level, ascending, ...])Сортировать объект по меткам (по оси). sort_values(by[, axis, ascending, inplace, ...])Сортировать по значениям по одной из осей. sortlevel([level, axis, ascending, inplace, ...])УСТЕРЕЖДАЕТСЯ: используйте DataFrame.sort_index()squeeze([axis])Сжать одномерные измерения длиной 1. stack([level, dropna])Поворот уровня (возможно, иерархических) меток столбцов, возвращающий DataFrame (или Series в случае объекта с единственным уровнем меток столбцов), имеющий иерархический индекс с новым внутренним уровнем меток строк. std([axis, skipna, level, ddof, numeric_only])Возвращает выборочную стандартную ошибку по запрошенной оси. sub(other[, axis, level, fill_value])Вычитание DataFrame и other поэлементно (бинарная операция sub).subtract(other[, axis, level, fill_value])Вычитание DataFrame и other поэлементно (бинарная операция sub).sum([axis, skipna, level, numeric_only, ...])Возвращает сумму значений по запрошенной оси. swapaxes(axis1, axis2[, copy])Меняет местами оси и соответствующим образом меняет местами значения осей. swaplevel([i, j, axis])Меняет местами уровни i и j в MultiIndex по определенной оси. tail([n])Возвращает последние n строк. take(indices[, axis, convert, is_copy])Возвращает элементы по заданным позиционным индексам вдоль оси. to_clipboard([excel, sep])Попытка записать текстовое представление объекта в буфер обмена системы. Это можно вставить в Excel, например. to_csv([path_or_buf, sep, na_rep, ...])Записать DataFrame в файл CSV (значения, разделённые запятыми). to_dense()Возвращает плотное представление NDFrame (в отличие от разреженного). to_dict([orient, into])Преобразовать DataFrame в словарь.
to_excel(excel_writer[, sheet_name, na_rep, ...])Запись DataFrame в лист Excel to_feather(fname)запись бинарного формата feather для DataFrame to_gbq(destination_table, project_id[, ...])Запись DataFrame в таблицу Google BigQuery. to_hdf(path_or_buf, key, **kwargs)Запись данных в файл HDF5 с использованием HDFStore. to_html([buf, columns, col_space, header, ...])Вывод DataFrame как HTML-таблицы. to_json([path_or_buf, orient, date_format, ...])Преобразование объекта в JSON-строку. to_latex([buf, columns, col_space, header, ...])Вывод объекта в табличную среду. to_msgpack([path_or_buf, encoding])msgpack (сериализация) объекта в файл по указанному пути. to_panel()Преобразование DataFrame из длинного (складываемого) формата в широкий (3D, Panel) формат. to_parquet(fname[, engine, compression])Запись DataFrame в бинарный формат parquet. to_period([freq, axis, copy])Преобразование DataFrame из DatetimeIndex в PeriodIndex с требуемой to_pickle(path[, compression, protocol])Pickle (сериализация) объекта в файл по указанному пути. to_records([index, convert_datetime64])Преобразование DataFrame в массив записей. to_sparse([fill_value, kind])Преобразование в SparseDataFrame to_sql(name, con[, flavor, schema, ...])Запись записей, хранящихся в DataFrame, в базу данных SQL. to_stata(fname[, convert_dates, ...])Класс для записи бинарных файлов Stata dta из объектов, подобных массивам to_string([buf, columns, col_space, header, ...])Вывод DataFrame в удобочитаемый для консоли табличный вывод. to_timestamp([freq, how, axis, copy])Преобразование в DatetimeIndex временных меток, в начале периода to_xarray()Возвращение объекта xarray из объекта pandas. transform(func, *args, **kwargs)Вызов функции, создающей NDFrame с аналогичным индексом transpose(*args, **kwargs)Транспонирование индекса и столбцов truediv(other[, axis, level, fill_value])Деление с плавающей точкой DataFrame и other, поэлементно (бинарная операция truediv).truncate([before, after, axis, copy])Обрезает отсортированный DataFrame/Series до и/или после определенного значения индекса. tshift([periods, freq, axis])Смещение временного индекса, используя частоту индекса, если она доступна. tz_convert(tz[, axis, level, copy])Преобразование оси с учетом часового пояса в целевой часовой пояс. tz_localize(tz[, axis, level, copy, ambiguous])Локализация временных рядов без учета часового пояса в целевом часовом поясе. unstack([level, fill_value])Поворот уровня меток индекса (необходимо иерархический), возвращая DataFrame с новым уровнем меток столбцов, внутренний уровень которых состоит из повернутых меток индекса. update(other[, join, overwrite, ...])Модификация DataFrame на месте с использованием значений без пропусков из переданного DataFrame. var([axis, skipna, level, ddof, numeric_only])Возвращение несмещенной дисперсии по запрошенной оси. where(cond[, other, inplace, axis, level, ...])Возвращает объект с теми же размерами, что и self, и соответствующие записи из self, где condимеет значение True, в противном случае изother.xs(key[, axis, level, drop_level])Возвращает поперечный срез (строка(и) или столбец(ы)) из Series/DataFrame.
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.22.0/generated/pandas.DataFrame.html