pandas.DataFrame
-
class pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)[source] -
Двумерная изменяемая по размеру, потенциально неоднородная таблица данных с маркированными осями (строки и столбцы). Арифметические операции выравниваются по меткам строк и столбцов. Можно рассматривать как контейнер типа dict для объектов Series. Основная структура данных pandas.
Параметры: -
data : ndarray (structured or homogeneous), Iterable, dict, or DataFrame -
Словарь может содержать Series, массивы, константы или спископодобные объекты
Изменено в версии 0.23.0: Если данные — словарь, порядок столбцов соответствует порядку вставки для Python 3.6 и более поздних версий.
Изменено в версии 0.25.0: Если данные — список словарей, порядок столбцов соответствует порядку вставки для Python 3.6 и более поздних версий.
-
index : Index or array-like -
Индекс для использования в результирующей таблице. Будет по умолчанию RangeIndex, если информация об индексации не входит в данные и индекс не предоставлен
-
columns : Index or array-like -
Метки столбцов для использования в результирующей таблице. Будет по умолчанию RangeIndex (0, 1, 2, …, n), если метки столбцов не предоставлены
-
dtype : dtype, default None -
Тип данных для принудительного задания. Допускается только один тип данных. Если None, определить автоматически
-
copy : boolean, default False -
Копировать данные из входных данных. Затрагивает только входные данные DataFrame / 2d ndarray
См. также
-
DataFrame.from_records - Конструктор из кортежей, также массивов записей.
-
DataFrame.from_dict - Из словарей Series, массивов или словарей.
-
DataFrame.from_items - Из последовательности пар (ключ, значение) read_csv, pandas.read_table, pandas.read_clipboard.
Примеры
Создание 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:
>>> df2 = pd.DataFrame(np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]), ... columns=['a', 'b', 'c']) >>> df2 a b c 0 1 2 3 1 4 5 6 2 7 8 9
Атрибуты
TТранспонировать индекс и столбцы. atДоступ к одному значению для пары метки строки/столбца. axesВозвращает список, представляющий оси DataFrame. blocks(УСТЕРЕЖДАЕТСЯ) Внутреннее свойство, синоним свойства для as_blocks(). columnsМетки столбцов DataFrame. dtypesВозвращает типы данных в DataFrame. emptyУказатель, пустой ли DataFrame. ftypes(УСТЕРЕЖДАЕТСЯ) Возвращает ftypes (указание разреженности/плотности и типа данных) в DataFrame. iatДоступ к одному значению для пары строки/столбца по целочисленной позиции. ilocИндексация только на основе целых чисел для выбора по позиции. indexИндекс (метки строк) DataFrame. is_copyВозвращает копию. ixИндексатор, в основном основанный на метках и позициях, с возвратом целочисленной позиции по умолчанию. locДоступ к группе строк и столбцов по метке(ам) или булевому массиву. ndimВозвращает целое число, представляющее количество осей/размерностей массива. shapeВозвращает кортеж, представляющий размерность DataFrame. sizeВозвращает целое число, представляющее количество элементов в этом объекте. styleСвойство, возвращающее объект Styler, содержащий методы для построения стилизованного представления DataFrame в формате HTML. valuesВозвращает представление NumPy DataFrame. Методы
-
abs(self)Возвращает Series/DataFrame с абсолютным значением каждого элемента. add(self, other[, axis, level, fill_value])Получить сумму DataFrame и other, поэлементно (бинарная операция add).add_prefix(self, prefix)Добавить префикс к меткам с помощью строки prefix.add_suffix(self, suffix)Добавить суффикс к меткам с помощью строки suffix.agg(self, func[, axis])Агрегировать, используя одну или несколько операций по указанной оси. aggregate(self, func[, axis])Агрегировать, используя одну или несколько операций по указанной оси. align(self, other[, join, axis, level, …])Выровнять два объекта по их осям с указанным методом объединения для каждого индекса оси. all(self[, axis, bool_only, skipna, level])Возвращает True, если все элементы True, потенциально по оси. any(self[, axis, bool_only, skipna, level])Возвращает True, если любой элемент True, потенциально по оси. append(self, other[, ignore_index, …])Добавить строки otherв конец вызываемого объекта, возвращая новый объект.apply(self, func[, axis, broadcast, raw, …])Применить функцию по оси DataFrame. applymap(self, func)Применить функцию к DataFrame поэлементно. as_blocks(self[, copy])(УСТАРЕЛО) Преобразовать фрейм в словарь типов dtype -> Конструктор, каждый из которых имеет однородный тип dtype. as_matrix(self[, columns])(УСТАРЕЛО) Преобразовать фрейм в его представление в виде массива NumPy. asfreq(self, freq[, method, how, normalize, …])Преобразовать TimeSeries в указанную частоту. asof(self, where[, subset])Возвращает последнюю строку(и) без каких-либо NaN перед where.assign(self, \*\*kwargs)Назначить новые столбцы DataFrame. astype(self, dtype[, copy, errors])Преобразовать pandas-объект в указанный тип dtype dtype.at_time(self, time[, asof, axis])Выбрать значения в определенное время суток (например, between_time(self, start_time, end_time[, …])Выбрать значения между определенными временами суток (например, с 9:00 до 9:30 утра). bfill(self[, axis, inplace, limit, downcast])Синоним для DataFrame.fillna()сmethod='bfill'.bool(self)Возвращает булевое значение единственного элемента PandasObject. boxplot(self[, column, by, ax, fontsize, …])Построение диаграммы размаха из столбцов DataFrame. clip(self[, lower, upper, axis, inplace])Обрезать значения на входном пороге(ах). clip_lower(self, threshold[, axis, inplace])(УСТАРЕЛО) Обрезать значения ниже заданного порога. clip_upper(self, threshold[, axis, inplace])(УСТАРЕЛО) Обрезать значения выше заданного порога. combine(self, other, func[, fill_value, …])Произвести поэлементное объединение столбцов с другим DataFrame. combine_first(self, other)Обновить нулевые элементы значением в том же расположении в other.compound(self[, axis, skipna, level])(УСТАРЕЛО) Возвращает составной процент значений для запрошенной оси. copy(self[, deep])Создать копию индексов и данных этого объекта. corr(self[, method, min_periods])Вычислить парную корреляцию столбцов, исключая значения NaN/null. corrwith(self, other[, axis, drop, method])Вычислить парную корреляцию между строками или столбцами DataFrame со строками или столбцами Series или DataFrame. count(self[, axis, level, numeric_only])Подсчитать количество ненулевых ячеек для каждого столбца или строки. cov(self[, min_periods])Вычислить парную ковариацию столбцов, исключая значения NaN/null. cummax(self[, axis, skipna])Возвращает кумуляльный максимум по оси DataFrame или Series. cummin(self[, axis, skipna])Возвращает кумуляльный минимум по оси DataFrame или Series. cumprod(self[, axis, skipna])Возвращает кумулятивное произведение по оси DataFrame или Series. cumsum(self[, axis, skipna])Возвращает кумулятивную сумму по оси DataFrame или Series. describe(self[, percentiles, include, exclude])Генерировать описательные статистики, которые обобщают центральную тенденцию, дисперсию и форму распределения набора данных, исключая NaNзначения.diff(self[, periods, axis])Первое дискретное различие элемента. div(self, other[, axis, level, fill_value])Получить деление с плавающей точкой DataFrame и other, поэлементно (бинарная операция truediv).divide(self, other[, axis, level, fill_value])Получить деление с плавающей точкой DataFrame и other, поэлементно (бинарная операция truediv).dot(self, other)Вычислить матричное произведение между DataFrame и other.
drop(self[, labels, axis, index, columns, …])Удаление указанных меток из строк или столбцов. drop_duplicates(self[, subset, keep, inplace])Возвращает DataFrame с удаленными дублирующими строками, при необходимости учитывая только определенные столбцы. droplevel(self, level[, axis])Возвращает DataFrame с удаленными запрошенными уровнями индекса/столбца. dropna(self[, axis, how, thresh, subset, …])Удаление пропущенных значений. duplicated(self[, subset, keep])Возвращает булеву серию, обозначающую дубликаты строк, при необходимости учитывая только определенные столбцы. eq(self, other[, axis, level])Получение равных значений DataFrame и other, поэлементно (бинарная операция eq).equals(self, other)Проверка, содержат ли два объекта одинаковые элементы. eval(self, expr[, inplace])Вычисление строки, описывающей операции над столбцами DataFrame. ewm(self[, com, span, halflife, alpha, …])Предоставление экспоненциально взвешенных функций. expanding(self[, min_periods, center, axis])Предоставление расширяющих преобразований. explode(self, column, Tuple])Преобразование каждого элемента списка в строку, дублируя значения индекса. ffill(self[, axis, inplace, limit, downcast])Синоним для DataFrame.fillna()сmethod='ffill'.fillna(self[, value, method, axis, inplace, …])Заполнение пропущенных значений (NA/NaN) указанным методом. filter(self[, items, like, regex, axis])Подмножество строк или столбцов DataFrame в соответствии с метками в указанном индексе. first(self, offset)Удобный метод для выбора начальных периодов временных рядов на основе временного сдвига. first_valid_index(self)Возвращает индекс первого ненулевого значения. floordiv(self, other[, axis, level, fill_value])Получение целочисленного деления DataFrame и other, поэлементно (бинарная операция floordiv).from_dict(data[, orient, dtype, columns])Конструирование DataFrame из словаря массивоподобных объектов или словарей. from_items(items[, columns, orient])(УСТАРЕЛО) Конструирование DataFrame из списка кортежей. from_records(data[, index, exclude, …])Преобразование структурированного или записянного ndarray в DataFrame. ge(self, other[, axis, level])Получение больше или равно DataFrame и other, поэлементно (бинарная операция ge).get(self, key[, default])Получение элемента из объекта для заданного ключа (например, столбца DataFrame). get_dtype_counts(self)(УСТАРЕЛО) Возвращает количество уникальных типов данных в этом объекте. get_ftype_counts(self)(УСТАРЕЛО) Возвращает количество уникальных типов данных в этом объекте. get_value(self, index, col[, takeable])(УСТАРЕЛО) Быстрое получение единственного значения в указанном столбце и индексе. get_values(self)(УСТАРЕЛО) Возвращает ndarray после преобразования разреженных значений в плотные. groupby(self[, by, axis, level, as_index, …])Группировка DataFrame или Series с помощью отображения или серии столбцов. gt(self, other[, axis, level])Получение больше DataFrame и other, поэлементно (бинарная операция gt).head(self[, n])Возвращает первые nстроки.hist(data[, column, by, grid, xlabelsize, …])Построение гистограммы DataFrame. idxmax(self[, axis, skipna])Возвращает индекс первого вхождения максимального значения по запрошенной оси. idxmin(self[, axis, skipna])Возвращает индекс первого вхождения минимального значения по запрошенной оси. infer_objects(self)Попытка улучшить типы данных для столбцов типа object. info(self[, verbose, buf, max_cols, …])Выводит краткое описание DataFrame. insert(self, loc, column, value[, …])Вставка столбца в DataFrame в указанное место. interpolate(self[, method, axis, limit, …])Интерполяция значений в соответствии с различными методами. isin(self, values)Является ли каждый элемент в DataFrame элементом values. isna(self)Обнаружение пропущенных значений. isnull(self)Обнаружение пропущенных значений. items(self)Итератор по парам (имя столбца, Series). iteritems(self)Итератор по парам (имя столбца, Series). iterrows(self)Итерация по строкам DataFrame как парам (индекс, Series). itertuples(self[, index, name])Итерация по строкам DataFrame как именованным кортежам. join(self, other[, on, how, lsuffix, …])Объединение столбцов другого DataFrame.
keys(self)Получить «ось информации» (см. Индексирование для получения дополнительной информации) kurt(self[, axis, skipna, level, numeric_only])Возвращает несмещенную эксцесс по запрошенной оси с использованием определения эксцесса Фишера (эксцесс нормального распределения == 0.0). kurtosis(self[, axis, skipna, level, …])Возвращает несмещенную эксцесс по запрошенной оси с использованием определения эксцесса Фишера (эксцесс нормального распределения == 0.0). last(self, offset)Удобный метод для подмножества конечных периодов временных рядов данных на основе смещения даты. last_valid_index(self)Возвращает индекс последнего ненулевого значения. le(self, other[, axis, level])Получить Меньше или равно DataFrame и other, поэлементно (бинарная операция le).lookup(self, row_labels, col_labels)Функция «изящной индексации» на основе меток для DataFrame. lt(self, other[, axis, level])Получить Меньше DataFrame и other, поэлементно (бинарная операция lt).mad(self[, axis, skipna, level])Возвращает среднее абсолютное отклонение значений для запрошенной оси. mask(self, cond[, other, inplace, axis, …])Заменить значения, где условие истинно. max(self[, axis, skipna, level, numeric_only])Возвращает максимальное значение по запрошенной оси. mean(self[, axis, skipna, level, numeric_only])Возвращает среднее значение по запрошенной оси. median(self[, axis, skipna, level, numeric_only])Возвращает медиану значений по запрошенной оси. melt(self[, id_vars, value_vars, var_name, …])Преобразовать DataFrame из широкого формата в длинный формат, необязательно оставляя идентификационные переменные. memory_usage(self[, index, deep])Возвращает объем памяти каждого столбца в байтах. merge(self, right[, how, on, left_on, …])Объединить DataFrame или объекты Series с именем с помощью соединения в стиле базы данных. min(self[, axis, skipna, level, numeric_only])Возвращает минимальное значение по запрошенной оси. mod(self, other[, axis, level, fill_value])Получить остаток от деления DataFrame и other, поэлементно (бинарная операция mod).mode(self[, axis, numeric_only, dropna])Получить моду(и) каждого элемента по выбранной оси. mul(self, other[, axis, level, fill_value])Получить произведение DataFrame и other, поэлементно (бинарная операция mul).multiply(self, other[, axis, level, fill_value])Получить произведение DataFrame и other, поэлементно (бинарная операция mul).ne(self, other[, axis, level])Получить Неравно DataFrame и other, поэлементно (бинарная операция ne).nlargest(self, n, columns[, keep])Возвращает первые nстроки, отсортированные поcolumnsв порядке убывания.notna(self)Обнаружение существующих (не пропущенных) значений. notnull(self)Обнаружение существующих (не пропущенных) значений. nsmallest(self, n, columns[, keep])Возвращает первые nстроки, отсортированные поcolumnsв порядке возрастания.nunique(self[, axis, dropna])Подсчёт уникальных наблюдений по запрошенной оси. pct_change(self[, periods, fill_method, …])Процентное изменение между текущим и предыдущим элементом. pipe(self, func, \*args, \*\*kwargs)Применить func(self, *args, **kwargs). pivot(self[, index, columns, values])Возвращает преобразованный DataFrame, организованный по заданным значениям индекса/столбцов. pivot_table(self[, values, index, columns, …])Создать сводную таблицу в стиле электронной таблицы как DataFrame. plotПсевдоним для pandas.plotting._core.PlotAccessorpop(self, item)Возвращает item и удаляет его из DataFrame. pow(self, other[, axis, level, fill_value])Получить показательную степень DataFrame и other, поэлементно (бинарная операция pow).prod(self[, axis, skipna, level, …])Возвращает произведение значений по запрошенной оси. product(self[, axis, skipna, level, …])Возвращает произведение значений по запрошенной оси. quantile(self[, q, axis, numeric_only, …])Возвращает значения в заданном квантиле по запрошенной оси. query(self, expr[, inplace])Запрос столбцов DataFrame с помощью логического выражения. radd(self, other[, axis, level, fill_value])Получить Сложение DataFrame и other, поэлементно (бинарная операция radd).rank(self[, axis, method, numeric_only, …])Вычислить ранги числовых данных (от 1 до n) по оси. rdiv(self, other[, axis, level, fill_value])Получить Деление с плавающей точкой DataFrame и other, поэлементно (бинарная операция rtruediv).reindex(self[, labels, index, columns, …])Соответствие DataFrame новому индексу с необязательной логикой заполнения, размещая NA/NaN в местах, не имеющих значения в предыдущем индексе.
reindex_like(self, other[, method, copy, …])Возвращает объект с совпадающими индексами, как у объекта other. rename(self[, mapper, index, columns, axis, …])Изменение меток осей. rename_axis(self[, mapper, index, columns, …])Установить имя оси для индекса или столбцов. reorder_levels(self, order[, axis])Переупорядочивает уровни индекса в соответствии с заданным порядком. replace(self[, to_replace, value, inplace, …])Заменяет значения, указанные в to_replace, наvalue.resample(self, rule[, how, axis, …])Перевыборка временных рядов. reset_index(self[, level, drop, inplace, …])Сбросить индекс или его уровень. rfloordiv(self, other[, axis, level, fill_value])Получить целочисленное деление DataFrame и other поэлементно (бинарная операция rfloordiv).rmod(self, other[, axis, level, fill_value])Получить остаток от деления DataFrame и other поэлементно (бинарная операция rmod).rmul(self, other[, axis, level, fill_value])Получить произведение DataFrame и other поэлементно (бинарная операция rmul).rolling(self, window[, min_periods, center, …])Предоставление расчётов с использованием скользящего окна. round(self[, decimals])Округляет DataFrame до заданного количества десятичных знаков. rpow(self, other[, axis, level, fill_value])Получить экспоненциальную степень DataFrame и other поэлементно (бинарная операция rpow).rsub(self, other[, axis, level, fill_value])Получить разность DataFrame и other поэлементно (бинарная операция rsub).rtruediv(self, other[, axis, level, fill_value])Получить вещественное деление DataFrame и other поэлементно (бинарная операция rtruediv).sample(self[, n, frac, replace, weights, …])Возвращает случайную выборку элементов из оси объекта. select_dtypes(self[, include, exclude])Возвращает подмножество столбцов DataFrame на основе типов столбцов. sem(self[, axis, skipna, level, ddof, …])Возвращает несмещённую стандартную ошибку среднего по запрошенной оси. set_axis(self, labels[, axis, inplace])Присваивает желаемый индекс заданной оси. set_index(self, keys[, drop, append, …])Устанавливает индекс DataFrame, используя существующие столбцы. set_value(self, index, col, value[, takeable])(УСТАРЕЛО) Установка единственного значения в указанный столбец и индекс. shift(self[, periods, freq, axis, fill_value])Сдвигает индекс на нужное количество периодов с необязательным временем freq.skew(self[, axis, skipna, level, numeric_only])Возвращает несмещённый коэффициент асимметрии по запрошенной оси, нормированный на N-1. slice_shift(self[, periods, axis])Эквивалентно shiftбез копирования данных.sort_index(self[, axis, level, ascending, …])Сортировка объекта по меткам (по оси). sort_values(self, by[, axis, ascending, …])Сортировка по значениям вдоль любой оси. sparseПсевдоним pandas.core.arrays.sparse.SparseFrameAccessorsqueeze(self[, axis])Сжимает объекты с одними измерениями до скаляров. stack(self[, level, dropna])Складывает указанные уровни из столбцов в индекс. std(self[, axis, skipna, level, ddof, …])Возвращает выборочную стандартную ошибку по запрошенной оси. sub(self, other[, axis, level, fill_value])Получить разность DataFrame и other поэлементно (бинарная операция sub).subtract(self, other[, axis, level, fill_value])Получить разность DataFrame и other поэлементно (бинарная операция sub).sum(self[, axis, skipna, level, …])Возвращает сумму значений по запрошенной оси. swapaxes(self, axis1, axis2[, copy])Меняет оси и соответствующим образом меняет значения осей. swaplevel(self[, i, j, axis])Меняет местами уровни i и j в MultiIndex по определенной оси. tail(self[, n])Возвращает последние nстроки.take(self, indices[, axis, is_copy])Возвращает элементы в заданных позиционных индексах вдоль оси. to_clipboard(self[, excel, sep])Копирует объект в буфер обмена системы. to_csv(self[, path_or_buf, sep, na_rep, …])Записывает объект в файл формата CSV (comma-separated values). to_dense(self)(УСТАРЕЛО) Возвращает плотное представление Series/DataFrame (в отличие от разреженного). to_dict(self[, orient, into])Преобразует DataFrame в словарь. to_excel(self, excel_writer[, sheet_name, …])Записывает объект в лист Excel. to_feather(self, fname)Записывает двоичный формат feather для DataFrames.
to_gbq(self, destination_table[, …])Запись DataFrame в таблицу Google BigQuery. to_hdf(self, path_or_buf, key, \*\*kwargs)Запись содержащихся данных в файл HDF5 с помощью HDFStore. to_html(self[, buf, columns, col_space, …])Вывод DataFrame в виде HTML-таблицы. to_json(self[, path_or_buf, orient, …])Преобразование объекта в JSON-строку. to_latex(self[, buf, columns, col_space, …])Вывод объекта в таблицу LaTeX. to_msgpack(self[, path_or_buf, encoding])(УСТЕРЕЖДЁН) Сериализация объекта в файл с использованием формата msgpack. to_numpy(self[, dtype, copy])Преобразование DataFrame в массив NumPy. to_parquet(self, fname[, engine, …])Запись DataFrame в двоичный формат parquet. to_period(self[, freq, axis, copy])Преобразование DataFrame с DatetimeIndex в PeriodIndex с заданной частотой (если не указана, она определяется из индекса). to_pickle(self, path[, compression, protocol])Запись объекта в файл с помощью пиклирования (сериализации). to_records(self[, index, …])Преобразование DataFrame в массив NumPy типа "record". to_sparse(self[, fill_value, kind])(УСТЕРЕЖДЁН) Преобразование в SparseDataFrame. to_sql(self, name, con[, schema, if_exists, …])Запись данных из DataFrame в базу данных SQL. to_stata(self, fname[, convert_dates, …])Экспорт DataFrame в формат Stata dta. to_string(self[, buf, columns, col_space, …])Вывод DataFrame в консольный вид таблицы. to_timestamp(self[, freq, how, axis, copy])Преобразование в DatetimeIndex временных меток, в начале периода. to_xarray(self)Возвращает объект xarray из pandas объекта. transform(self, func[, axis])Вызов funcдля self, создавая DataFrame с преобразованными значениями и такой же длиной оси, как у self.transpose(self, \*args, \*\*kwargs)Транспонирование индекса и столбцов. truediv(self, other[, axis, level, fill_value])Получение деления по модулю dataframe и other, по элементам (бинарная операция truediv).truncate(self[, before, after, axis, copy])Обрезка Series или DataFrame до и после определённого значения индекса. tshift(self[, periods, freq, axis])Смещение временного индекса с использованием частоты индекса, если она доступна. tz_convert(self, tz[, axis, level, copy])Преобразование оси с временными зонами в целевую временную зону. tz_localize(self, tz[, axis, level, copy, …])Локализация индекса без временной зоны Series или DataFrame в целевой часовой пояс. unstack(self[, level, fill_value])Поворот уровня меток индекса (обязательно иерархического), возвращает DataFrame с новым уровнем меток столбцов, внутренний уровень которых состоит из повернутых меток индекса. update(self, other[, join, overwrite, …])Изменение на месте с использованием значений без пропусков из другого DataFrame. var(self[, axis, skipna, level, ddof, …])Возвращает несмещённую дисперсию по запрошенной оси. where(self, cond[, other, inplace, axis, …])Замена значений, где условие ложно. xs(self, 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.25.0/reference/api/pandas.DataFrame.html