Как стать автором
Обновить

Комментарии 12

дааааааа -- можно использовать CHARACTER VARYING , int4 , date . Но мы сейчас не про экономию места на диске

Почему вы думаете, что CHARACTER VARYING занимает места на диске (в случае PostgreSQL) меньше, чем TEXT?

согласен ,я довольно-таки грубо выразился. Моё заявления скорее относиться к int2_int4_int8(real) они согласно официальной документации занимают разный объём данных. CHARACTER VARYING and TEXT не относятся к этому высказыванию и вообще , это другая тема для разговора.

То есть всю статью можно сократить до:

  1. Нажать кнопочки в интерфейсе

  2. Ввести запрос COPY FROM

Такие задачи, конечно, не всем под силу

Пост подразумевался, как рассказ о простом(основы-основ).В следующий раз постараюсь поднять более сложны и интересные темы.( Всё таки первый пост, не надо бить кулаками)

видим что из-за 26 столбцов, Pycharm не подгружает всё таблицу( в дальнейшем исправим)

Это не так. Просто pandas выводит на экран ограниченное число столбцов. Изменить можно например так: pd.set_option('display.max_rows', 100)

drop удаления столбцов , Axis: указывает, что столбцы или строки должны быть удалены

Вы используете устаревший синтаксис. В текущем виде нет необходимости гадать, что именно удаляется, т.к. это теперь указывается явно:

car.drop(columns=['description', 'county', 'url', 'region_url', 'image_url', 'posting_date'], inplace=True)

Находим и открываем sql Shell (psql) -- терминальный интерфейс для PostgreSQL

просто нажимаем на enter везде кроме, Database(название вашей базы данных) и Пароль пользователя postgres.

А что делать, если сервер не локальный и у меня нет доступа к учётке суперпользователя?

И ещё, непонятно зачем мы убирали выбросы, если это данные реальных датасетов?
Если статья не про данные, то почему тогда в статье больше всего буков про выбросы?

Это не так. Просто pandas выводит на экран ограниченное число столбцов. Изменить можно например так: pd.set_option('display.max_rows', 100)

Возьму себе на заметку, спасибо за совет

Вы используете устаревший синтаксис. В текущем виде нет необходимости гадать, что именно удаляется, т.к. это теперь указывается явно:

car.drop(columns=['description', 'county', 'url', 'region_url', 'image_url', 'posting_date'], inplace=True)

Тут я вас плохо понял, разве в статье я не тоже самое написал ?

car.drop(['description', 'county', 'url', 'region_url', 'image_url', 'posting_date'], axis=1, inplace=True)

И ещё, непонятно зачем мы убирали выбросы, если это данные реальных датасетов?

дата сет c Kaggle, подразумевается что он не готовый может иметь пропуски и опечатки.

Если статья не про данные, то почему тогда в статье больше всего буков про выбросы?

Всё что мы храним в PosctgreSQL это данные , так что не считаю информацию про данные лишние( но возможно про выбросы многовато)

А что делать, если сервер не локальный и у меня нет доступа к учётке суперпользователя?

COPY FROM STDIN может помочь найти ответ.

Тут я вас плохо понял, разве в статье я не тоже самое написал ?

car.drop(['description', 'county', 'url', 'region_url', 'image_url', 'posting_date'], axis=1, inplace=True)

Нет. Сравните внимательно, как вы указываете имена столбцов и то как вам предлагают их указывать.

Тут я вас плохо понял, разве в статье я не тоже самое написал ?

Как всегда, внимание к деталям )
Из доки: "columns single label or list-like

Alternative to specifying axis (labels, axis=1 is equivalent to columns=labels).

"

COPY FROM STDIN может помочь найти ответ.

Я намекал вам на то, что у psql есть много нужных параметров, которые необходимо учитывать. Ваш способ запуска сработает только если БД - локальная и вы - суперюзер. Для остальных вариантов, нужно использовать ключи.

Вы, кажется, забыли проверить датасет на пропущенные данные (null'ы), проверка делается через dataset.isnull().sum(), дроп пропущенных значений через dataset = dataset.dropna(). На стадии предварительной подготовки данных это достаточно важный шаг.

Согласен , стоило посмотреть полностью пропущенные строки и удалить их. Или удалять полностью строку при отсутствии модели.(цены есть в каждой строке)

Запятая ставится сразу после слова. Так как мой первый комментарий, то буду помягче.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории