В этой статье мы рассмотрим набор данных, содержащий данные о погоде, записанные в разное время и в разных местах. Набор данных включает информацию о дате и времени, температуре, температуре точки росы, относительной влажности, скорости ветра, видимости, давлении и погодных условиях. Мы будем использовать различные инструменты и методы для анализа этих данных и извлечения из них информации. К концу этой статьи вы будете лучше понимать, как анализировать и интерпретировать данные о погоде с помощью Python.
import pandas as pd
import pandas as pd
— это оператор Python, который импортирует библиотеку pandas
и дает ей псевдоним pd
. Это позволяет вам использовать аббревиатуру pd
при вызове функций или методов из библиотеки pandas
.
data = pd.read_csv(r"Weather Data.csv")
data = pd.read_csv(r"Weather Data.csv")
— это оператор Python, который использует функцию read_csv
из библиотеки pandas
для чтения данных из CSV-файла с именем «Weather Data.csv» и сохранения данных в pandas
DataFrame.
DataFrame — это двумерная структура данных, которая может хранить данные в строках и столбцах. Это похоже на электронную таблицу или рабочий лист Excel. Функция
read_csv
— это мощная функция для чтения данных из CSV-файла и их сохранения в DataFrame. Он может обрабатывать множество различных типов данных и имеет множество необязательных параметров для управления чтением и анализом данных.
Сохраняя данные в DataFrame, вы можете использовать функции и методы, предоставляемые
pandas
, для обработки и анализа данных. Например, вы можете использовать методhead
для просмотра первых нескольких строк данных или методdescribe
для вычисления сводной статистики данных. Вы также можете использовать методplot
для создания диаграмм и графиков или методgroupby
для группировки и агрегирования.
data.head()
data.head()
— это метод, который используется для отображения первых нескольких строк pandas
DataFrame.
Например, если у вас есть pandas
DataFrame с именем data
, который содержит данные, считанные из CSV-файла, вы можете использовать метод head
для просмотра первых нескольких строк данных. Метод head
принимает необязательный параметр n
, который определяет количество отображаемых строк. Если вы опустите параметр n
, метод head
по умолчанию отобразит первые 5 строк данных.
Метод
head
— это удобный способ быстро просмотреть данные и понять, как они выглядят. Это может быть особенно полезно, когда вы работаете с большими наборами данных и хотите получить представление о данных, не просматривая весь набор данных.
Например, вы можете использовать
data.head()
для просмотра первых нескольких строк большого набора данных, чтобы увидеть, как выглядят данные, или чтобы убедиться, что данные были прочитаны правильно. Затем вы можете использовать другиеpandas
функции и методы для дальнейшего изучения и анализа данных.
data.shape
data.shape
— это свойство pandas
DataFrame, которое возвращает размеры DataFrame в виде кортежа целых чисел. Первый элемент кортежа — это количество строк, а второй элемент — это количество столбцов.
Например, если у вас есть pandas
DataFrame с именем data
, который содержит 10 строк и 5 столбцов, свойство shape
вернет кортеж (10, 5)
. Вы можете использовать этот кортеж для определения размера DataFrame, а также для перебора строк и столбцов DataFrame.
Свойство
shape
часто используется для определения размера DataFrame или для проверки правильности чтения данных. Например, вы можете использоватьdata.shape
, чтобы убедиться, что DataFrame содержит ожидаемое количество строк и столбцов, или чтобы убедиться, что DataFrame имеет правильные размеры, прежде чем выполнять с ним какую-либо операцию.
Вы также можете использовать свойство
shape
для нарезки и индексации DataFrame. Например, вы можете использоватьdata.shape[0]
для доступа к количеству строк в DataFrame или вы можете использоватьdata.shape[1]
для доступа к количеству столбцов. Затем вы можете использовать эти значения для перебора строк и столбцов DataFrame или для выбора определенных строк и столбцов.
data.index
data.index
— это свойство pandas
DataFrame, которое возвращает индекс DataFrame. Индекс DataFrame — это объект, подобный массиву, который содержит метки строк DataFrame. Метки строк используются для идентификации строк DataFrame и отображаются в крайнем левом столбце DataFrame.
По умолчанию индекс DataFrame представляет собой целочисленный индекс, который начинается с 0 и увеличивается на 1 для каждой строки. Однако вы также можете указать другой индекс для DataFrame, например строковый индекс или индекс даты и времени.
Индекс DataFrame является важной частью DataFrame, поскольку он используется для идентификации строк DataFrame и для доступа к определенным строкам. Вы можете использовать индекс для выбора строк DataFrame, используя атрибуты
loc
илиiloc
, или вы можете использовать его для нарезки DataFrame, используя стандартную нотацию индексации Python.
Вы также можете использовать метод
reset_index
для сброса индекса DataFrame и создания нового целочисленного индекса, начиная с 0. Это может быть полезно, если вы хотите сбросить индекс DataFrame после того, как каким-либо образом его изменили.
data.columns
data.columns
— это свойство pandas
DataFrame, которое возвращает метки столбцов DataFrame. Метки столбцов используются для идентификации столбцов DataFrame и отображаются в верхней строке DataFrame.
Метки столбцов DataFrame хранятся в объекте Index, который представляет собой объект, подобный массиву, который может хранить данные любого типа. Вы можете получить доступ к меткам столбцов DataFrame, используя свойство columns
, и вы можете использовать их для доступа или изменения данных в столбцах DataFrame.
Например, вы можете использовать свойство columns
, чтобы получить список меток столбцов DataFrame, или вы можете использовать его для выбора определенных столбцов DataFrame. Вы также можете использовать его для переименования столбцов DataFrame или для создания новых столбцов путем назначения.
Свойство
columns
является важной частью DataFrame, поскольку оно используется для идентификации столбцов DataFrame и для доступа или изменения данных в столбцах. Вы можете использовать его для выполнения операций со столбцами DataFrame, таких как выбор, фильтрация или преобразование данных.
data.dtypes
data.dtypes
— это свойство pandas
DataFrame, которое возвращает тип данных каждого столбца в DataFrame. Тип данных столбца — это тип данных, которые хранятся в столбце.
Например, если столбец pandas
DataFrame содержит целочисленные значения, тип данных этого столбца будет int
. Если столбец содержит значения с плавающей запятой, тип данных будет float
, а если столбец содержит строковые значения, тип данных будет object
.
Свойство
dtypes
возвращает объект Series, который содержит тип данных каждого столбца в DataFrame. Индекс серии — это метка столбца, а значения — это типы данных столбцов.
Вы можете использовать свойство
dtypes
для получения сводки по типам данных в DataFrame или для проверки того, что типы данных столбцов соответствуют вашим ожиданиям. Вы также можете использовать его для преобразования типов данных столбцов, используя методastype
или другие функции, предоставляемыеpandas
.
Например, вы можете использовать
data.dtypes
для проверки типов данных столбцов в DataFrame, а затем использовать методastype
для преобразования типов данных столбцов в соответствующие типы для вашего анализа.
data['Weather'].unique()
data['Weather'].unique()
— это метод, который используется для извлечения уникальных значений из столбца pandas
DataFrame. В этом случае столбец является столбцом Weather
кадра данных data
.
Метод unique
возвращает массивоподобный объект, содержащий уникальные значения столбца. Уникальные значения — это значения, которые появляются в столбце только один раз.
Вы можете использовать метод unique
для определения уникальных значений в столбце или для подсчета количества уникальных значений. Например, вы можете использовать data['Weather'].unique()
, чтобы получить список уникальных погодных условий в столбце Weather
, или вы можете использовать len(data['Weather'].unique())
, чтобы подсчитать количество уникальных погодных условий.
Метод
unique
— полезный способ изучить данные в столбце и понять распределение значений в столбце. Его можно использовать для выявления закономерностей или тенденций в данных, а также для выявления выбросов или аномалий. Вы также можете использовать его для группировки или агрегирования данных по уникальным значениям столбца.
data.nunique()
data.nunique()
— это метод pandas
DataFrame, который возвращает количество уникальных значений в каждом столбце DataFrame. Метод nunique
возвращает объект Series, содержащий количество уникальных значений в каждом столбце. Индекс серии — это метка столбца, а значения — это количество уникальных значений в каждом столбце.
Метод
nunique
— это полезный способ получить сводку данных в DataFrame и понять распределение значений в каждом столбце. Его можно использовать для определения столбцов, содержащих небольшое количество уникальных значений, или для определения столбцов, содержащих большое количество уникальных значений. Вы также можете использовать его для группировки или агрегирования данных по уникальным значениям столбцов.
data.count()
data.count()
— это метод pandas
DataFrame, который возвращает количество неотсутствующих (т. е. не-NA или ненулевых) значений в каждом столбце DataFrame. Метод count
возвращает объект Series, содержащий количество неотсутствующих значений в каждом столбце. Индекс серии — это метка столбца, а значения — это количество неотсутствующих значений в каждом столбце.
Метод
count
— это полезный способ получить сводку данных в DataFrame и понять полноту данных в каждом столбце. Его можно использовать для определения столбцов с небольшим количеством неотсутствующих значений или для определения столбцов с большим количеством отсутствующих значений. Вы также можете использовать его для фильтрации или исключения строк с отсутствующими значениями, используя методdropna
или другие функции, предоставляемыеpandas
.
data['Weather'].value_counts()
data['Weather'].value_counts()
— это метод, который используется для подсчета количества вхождений каждого уникального значения в столбце pandas
DataFrame. В данном случае это столбец Weather
кадра данных data
.
Метод
value_counts
возвращает объект Series, содержащий количество каждого уникального значения в столбце. Индекс серии — это уникальное значение, а значения — это количество каждого значения.
Вы можете использовать метод
value_counts
, чтобы получить сводку данных в столбце и понять распределение значений в столбце. Вы также можете использовать его для группировки или агрегирования данных по уникальным значениям столбца. Например, вы можете использоватьdata['Weather'].value_counts()
для подсчета количества дней с каждым типом погоды или для построения гистограммы данных.
data.info()
data.info()
— это метод pandas
DataFrame, который используется для отображения сводки DataFrame, включая типы данных столбцов, количество неотсутствующих значений в каждом столбце и использование памяти DataFrame.
Метод info
возвращает сводку DataFrame, которая включает следующую информацию:
- Имя и тип данных каждого столбца
- Количество строк и столбцов в DataFrame
- Количество непропущенных значений в каждом столбце
- Использование памяти DataFrame
Метод
info
— это удобный способ получить сводку DataFrame и проверить типы данных и полноту данных. Это особенно полезно, когда вы работаете с большими наборами данных и хотите получить обзор данных, не просматривая весь набор данных.
Скорость ветра км/ч уникальный
data['Wind Speed_km/h'].unique()
data['Wind Speed_km/h'].unique()
— это метод, который используется для извлечения уникальных значений из столбца pandas
DataFrame. В данном случае это столбец 'Wind Speed_km/h'
кадра данных data
.
Метод unique
возвращает массивоподобный объект, содержащий уникальные значения столбца. Уникальные значения — это значения, которые появляются в столбце только один раз.
Вы можете использовать метод unique
для определения уникальных значений в столбце или для подсчета количества уникальных значений. Например, вы можете использовать data['Wind Speed_km/h'].unique()
, чтобы получить список уникальных скоростей ветра в столбце 'Wind Speed_km/h'
, или вы можете использовать len(data['Wind Speed_km/h'].unique())
, чтобы подсчитать количество уникальных скоростей ветра.
Метод
unique
— это полезный способ изучить данные в столбце и понять распределение значений в столбце. Его можно использовать для выявления закономерностей или тенденций в данных, а также для выявления выбросов или аномалий. Вы также можете использовать его для группировки или агрегирования данных по уникальным значениям столбца.
Сколько раз погода была абсолютно ясной
data.Weather.value_counts() # Filtering data[data.Weather == 'Clear'] #groupby() data.groupby('Weather').get_group('Clear')
data.Weather.value_counts()
— это метод, который используется для подсчета количества вхождений каждого уникального значения в столбце Weather
кадра данных data
.
Метод value_counts
возвращает объект Series, содержащий количество каждого уникального значения в столбце. Индекс серии — это уникальное значение, а значения — это количество каждого значения.
Вы можете использовать метод value_counts
, чтобы получить сводку данных в столбце и понять распределение значений в столбце. Вы также можете использовать его для группировки или агрегирования данных по уникальным значениям столбца. Например, вы можете использовать data.Weather.value_counts()
для подсчета количества дней с каждым типом погоды или для построения гистограммы данных.
Следующая строка кода, data[data.Weather == 'Clear']
, используется для фильтрации строк data
DataFrame на основе значений в столбце Weather
. Эта строка кода возвращает новый кадр данных, содержащий только строки, в которых значение столбца Weather
равно 'Clear'
.
Последняя строка кода, data.groupby('Weather').get_group('Clear')
, используется для группировки строк data
DataFrame по значениям в столбце Weather
, а затем для выбора группы строк, где значение столбца Weather
равно 'Clear'
. Эта строка кода возвращает новый кадр данных, содержащий только строки, в которых значение столбца Weather
равно 'Clear'
.
Эти строки кода можно использовать вместе для изучения и анализа данных в data
DataFrame. Например, вы можете использовать их для подсчета количества дней с ясной погодой или для построения графика данных для дней с ясной погодой. Вы можете использовать метод value_counts
, чтобы получить сводку данных в столбце и понять распределение значений в столбце. столбец. Вы также можете использовать его для группировки или агрегирования данных по уникальным значениям столбца. Например, вы можете использовать data.Weather.value_counts()
для подсчета количества дней с каждым типом погоды или для построения гистограммы данных.
Следующая строка кода, data[data.Weather == 'Clear']
, используется для фильтрации строк data
DataFrame на основе значений в столбце Weather
. Эта строка кода возвращает новый кадр данных, содержащий только строки, в которых значение столбца Weather
равно 'Clear'
.
Последняя строка кода, data.groupby('Weather').get_group('Clear')
, используется для группировки строк data
DataFrame по значениям в столбце Weather
, а затем для выбора группы строк, где значение столбца Weather
равно 'Clear'
. Эта строка кода возвращает новый кадр данных, содержащий только строки, в которых значение столбца Weather
равно 'Clear'
.
Эти строки кода можно использовать вместе для изучения и анализа данных в data
DataFrame. Например, вы можете использовать их для подсчета количества дней с ясной погодой или для построения графика данных для дней с ясной погодой.
Сколько раз скорость ветра была ровно 4 км/ч
data[data['Wind Speed_km/h'] == 4]
data[data['Wind Speed_km/h'] == 4]
— это выражение индексации pandas
DataFrame, которое используется для выбора строк из data
DataFrame на основе значений в столбце 'Wind Speed_km/h'
.
Это выражение использует индексирование для выбора строк из data
DataFrame на основе значений в столбце 'Wind Speed_km/h'
. Выражение data['Wind Speed_km/h'] == 4
возвращает логический массив, который равен True
для строк, где значение столбца 'Wind Speed_km/h'
равно 4
, и False
для всех остальных строк. Затем этот логический массив используется для индексации data
DataFrame, и результирующий фрейм данных содержит только строки, в которых значение столбца 'Wind Speed_km/h'
равно 4
.
Вы можете использовать это выражение индексирования для выбора и фильтрации строк pandas
DataFrame на основе значений в определенном столбце. Это мощный и гибкий способ выбора и обработки данных в DataFrame, и он является неотъемлемой частью обработки и анализа данных с помощью pandas
.
Все нулевые значения в данных
data.isnull().sum() data.notnull().sum()
data.isnull().sum()
и data.notnull().sum()
— это методы pandas
DataFrame, которые используются для подсчета количества отсутствующих (т. е. NA
или null
) и неотсутствующих значений в каждом столбце DataFrame соответственно.
Метод isnull
возвращает DataFrame логических значений, которые равны True
для ячеек, содержащих пропущенные значения, и False
для ячеек, не содержащих пропущенных значений. Затем метод sum
используется для подсчета количества значений True
в каждом столбце.
Например, если у вас есть
pandas
DataFrame с именемdata
, который содержит три столбца,'A'
,'B'
и'C'
, и вы хотите подсчитать количество пропущенных значений в каждом столбце, вы можете использовать методыisnull
иsum
следующим образом:
недостающие_счетчики = данные.isnull().sum()
Это создаст объект Series, который выглядит следующим образом:
A 3
B 5
C 0
dtype: int64
Метод notnull
работает аналогичным образом, но он возвращает DataFrame логических значений, которые равны True
для ячеек, не содержащих пропущенных значений, и False
для ячеек, содержащих пропущенные значения. Затем метод sum
используется для подсчета количества значений True
в каждом столбце.
Например, если вы хотите подсчитать количество непропущенных значений в каждом столбце data
DataFrame, вы
Переименуйте имя столбца «Погода» DataFrame в «Условие погоды».
data.rename(columns = {'Weather' : 'Weather Conditions'}, inplace = True)
data.rename(columns = {'Weather' : 'Weather Conditions'}, inplace = True)
— это метод pandas
DataFrame, который используется для переименования столбцов DataFrame.
Метод rename
принимает параметр columns
, который представляет собой словарь, сопоставляющий старые имена столбцов с новыми именами столбцов. В этом случае словарь сопоставляет старое имя столбца 'Weather'
с новым именем столбца 'Weather Conditions'
.
Параметр inplace
является логическим значением, которое указывает, следует ли вносить изменения в DataFrame на месте (т. е. следует изменить исходный DataFrame) или следует возвращать новый DataFrame. В данном случае параметру inplace
присваивается значение True
, поэтому изменения будут производиться на месте.
Например, если у вас есть
pandas
DataFrame с именемdata
, который содержит столбец с именем'Weather'
, и вы хотите переименовать столбец в'Weather Conditions'
, вы можете использовать методrename
следующим образом.
Это переименует столбец
'Weather'
в'Weather Conditions'
вdata
DataFrame.
Метод
rename
— это полезный способ изменить имена столбцов DataFrame, особенно если у вас большой набор данных и вы хотите сделать имена столбцов более описательными или значимыми. Вы можете использовать его для одновременного переименования одного или нескольких столбцов, а также для изменения регистра имен столбцов (например, из нижнего регистра в верхний или из верхнего в нижний).
Видимость
data.Visibility_km.mean()
data.Visibility_km.mean()
— это метод, который используется для вычисления среднего значения (т. е. среднего) значений в столбце Visibility_km
кадра данных data
.
Метод mean
— это статистический метод, который используется для вычисления среднего арифметического значений в столбце. Среднее значение представляет собой сумму значений, деленную на количество значений.
Например, если столбец
Visibility_km
содержит следующие значения:
10
20
30
40
50
Затем метод
mean
вернет значение30
, которое представляет собой среднее значение значений в столбце.
Вы можете использовать метод
mean
, чтобы получить сводку данных в столбце и понять основную тенденцию данных. Его также можно использовать для сравнения среднего значения данных в одном столбце со средним значением данных в другом столбце или для сравнения среднего значения данных с определенным значением или пороговым значением.
Метод
mean
— это лишь один из многих статистических методов, предоставляемыхpandas
для анализа данных. Другие статистические методы, которые могут оказаться полезными, включаютmin
,max
,median
,mode
,std
,var
иquantile
. Вы можете использовать эти методы для расчета базовой статистики и понимания распределения данных вpandas
DataFrame.
Стандартное отклонение давления
data.Press_kPa.std()
data.Press_kPa.std()
— это метод, который используется для вычисления стандартного отклонения значений в столбце Press_kPa
data
DataFrame.
Стандартное отклонение — это статистическая мера дисперсии или разброса набора данных. Это квадратный корень из дисперсии данных. Дисперсия представляет собой среднее квадратов разностей между значениями и средним значением данных.
Стандартное отклонение является полезной мерой разброса данных, поскольку оно выражается в тех же единицах, что и сами данные. Это мера того, насколько далеко значения в наборе данных от среднего. Большое стандартное отклонение указывает на то, что значения в наборе данных разбросаны по большому диапазону, а небольшое стандартное отклонение указывает на то, что значения сконцентрированы вокруг среднего значения.
Вы можете использовать метод std
, чтобы получить сводку данных в столбце и понять дисперсию или разброс данных. Его также можно использовать для сравнения стандартного отклонения данных в одном столбце со стандартным отклонением данных в другом столбце или для сравнения стандартного отклонения данных с определенным значением или порогом.
Метод
std
— это лишь один из многих статистических методов, предоставляемыхpandas
для анализа данных. Другие статистические методы, которые могут оказаться полезными, включаютmean
,min
,max
,median
,mode
,var
иquantile
. Вы можете использовать эти методы для расчета базовой статистики и понимания распределения данных вpandas
DataFrame.
Отклонение относительной влажности
data['Rel Hum_%'].var()
data['Rel Hum_%'].var()
— это метод, который используется для расчета дисперсии значений в столбце 'Rel Hum_%'
кадра данных data
.
Дисперсия — это статистическая мера дисперсии или разброса набора данных. Это среднее квадратов разностей между значениями и средним значением данных.
Дисперсия является полезной мерой разброса данных, поскольку она является мерой того, насколько значения в наборе данных далеки от среднего. Большая дисперсия указывает на то, что значения в наборе данных разбросаны по большому диапазону, а небольшая дисперсия указывает на то, что значения сосредоточены вокруг среднего значения.
Вы можете использовать метод var
, чтобы получить сводку данных в столбце и понять дисперсию или разброс данных. Его также можно использовать для сравнения дисперсии данных в одном столбце с дисперсией данных в другом столбце или для сравнения дисперсии данных с определенным значением или порогом.
Метод
var
— это лишь один из множества статистических методов, предоставляемыхpandas
для анализа данных. Другие статистические методы, которые могут оказаться полезными, включаютmean
,min
,max
,median
,mode
,std
иquantile
. Вы можете использовать эти методы для расчета базовой статистики и понимания распределения данных вpandas
DataFrame.
Когда был снежный рекорд
data['Weather Conditions'].value_counts() data[data['Weather Conditions'] == 'Snow'] data[data['Weather Conditions'].str.contains('Snow')].head(5)
data['Weather Conditions'].value_counts()
— это метод, который используется для подсчета количества вхождений каждого уникального значения в столбце 'Weather Conditions'
кадра данных data
.
Метод value_counts
возвращает объект Series, содержащий количество каждого уникального значения в столбце. Индекс серии — это уникальное значение, а значения — это количество каждого значения.
Например, если столбец
'Weather Conditions'
содержит следующие значения:
Облачно
Облачно
Солнечно
Дождь
Дождь
Дождь
Затем метод
value_counts
вернет объект Series, который выглядит следующим образом:
Облачно 2
Дождь 3
Солнечно 1
dtype: int64
Вы можете использовать метод value_counts
, чтобы получить сводку данных в столбце и понять распределение значений в столбце. Вы также можете использовать его для группировки или агрегирования данных по уникальным значениям столбца. Например, вы можете использовать data['Weather Conditions'].value_counts()
для подсчета количества дней с каждым типом погоды или для построения гистограммы данных.
Следующая строка кода, data[data['Weather Conditions'] == 'Snow']
, используется для фильтрации строк data
DataFrame на основе значений в столбце 'Weather Conditions'
. Эта строка кода возвращает новый кадр данных, содержащий только те строки, в которых значение столбца 'Weather Conditions'
равно 'Snow'
.
Последняя строка кода, data[data['Weather Conditions'].str.contains('Snow')].head(5)
, используется для фильтрации строк data
DataFrame на основе значений в столбце 'Weather Conditions'
. В этой строке кода используется метод str.contains
для выбора строк, в которых значение столбца 'Weather Conditions'
содержит строку 'Snow'
. Затем метод head
используется для возврата первых пяти строк результирующего DataFrame.
Эти строки кода можно использовать вместе для изучения и анализа данных в data
DataFrame. Например, вы можете использовать их для подсчета количества дней со снегом или для выбора и отображения строк DataFrame, содержащих строку 'Snow'
в столбце 'Weather Conditions'
.
Когда скорость ветра выше 24 и видимость 25
data[(data['Wind Speed_km/h'] > 24) & (data['Visibility_km'] == 25)]
data[(data['Wind Speed_km/h'] > 24) & (data['Visibility_km'] == 25)]
— это выражение индексации pandas
DataFrame, которое используется для выбора строк из data
DataFrame на основе значений в столбцах 'Wind Speed_km/h'
и 'Visibility_km'
.
Это выражение использует индексирование для выбора строк из data
DataFrame на основе комбинации условий. Условия задаются с помощью оператора &
, который означает «и». Первое условие, data['Wind Speed_km/h'] > 24
, выбирает строки, в которых значение столбца 'Wind Speed_km/h'
больше 24
. Второе условие, data['Visibility_km'] == 25
, выбирает строки, в которых значение столбца 'Visibility_km'
равно 25
.
Оператор &
используется для объединения двух условий, а результирующий логический массив используется для индексации data
DataFrame. Результирующий DataFrame содержит только строки, в которых значение столбца 'Wind Speed_km/h'
больше 24
, а значение столбца 'Visibility_km'
равно 25
.
Например, если
data
DataFrame содержит следующие значения в столбцах'Wind Speed_km/h'
и'Visibility_km'
:
Скорость ветра_км/ч Видимость_км
6 10
4 20
2 30
4 40
3 25
Среднее значение каждого столбца для каждого погодного условия
data.groupby('Weather Conditions').mean()
data.groupby('Weather Conditions').mean()
— это метод, который используется для группировки строк data
DataFrame по значениям в столбце 'Weather Conditions'
и для вычисления среднего значения каждой группы.
Метод groupby
используется для разделения data
DataFrame на группы на основе уникальных значений столбца 'Weather Conditions'
. Затем к каждой группе применяется метод mean
, и полученные группы объединяются в новый DataFrame.
Результирующий DataFrame имеет ту же структуру, что и исходный DataFrame, но строки сгруппированы по столбцу 'Weather Conditions'
, а значения в других столбцах являются средними значениями в каждой группе.
Например, если
data
DataFrame содержит следующие значения в столбцах'Weather Conditions'
и'Wind Speed_km/h'
:
Погодные условия Скорость ветра_км/ч
Облачно 6
Облачно 4
Солнечно 2
Дождь 4
Дождь 3
Дождь 4
Затем метод
data.groupby('Weather Conditions').mean()
вернет новый DataFrame, который выглядит так:
Погодные условия Скорость ветра_км/ч
Облачно 5
Дождь 3.7
Солнечно 2
Вы можете использовать методы
groupby
иmean
вместе, чтобы сгруппировать и агрегировать данные вpandas
DataFrame по значениям в определенном столбце. Это мощный и гибкий способ анализа и обобщения данных, который является неотъемлемой частью обработки и анализа данных с помощьюpandas
.
Минимальное и максимальное значение
data.groupby('Weather Conditions').min() data.groupby('Weather Conditions').max()
data.groupby('Weather Conditions').min()
и data.groupby('Weather Conditions').max()
— это методы, которые используются для группировки строк data
DataFrame по значениям в столбце 'Weather Conditions'
и для вычисления минимального и максимального значений каждой группы соответственно.
Метод groupby
используется для разделения data
DataFrame на группы на основе уникальных значений столбца 'Weather Conditions'
. Затем к каждой группе применяются методы min
и max
, и полученные группы объединяются в новые кадры данных.
Результирующие кадры данных имеют ту же структуру, что и исходный кадр данных, но строки сгруппированы по столбцу 'Weather Conditions'
, а значения в других столбцах являются минимальными или максимальными значениями каждой группы.
Вы можете использовать методы
groupby
иmin
илиmax
вместе, чтобы сгруппировать и агрегировать данные вpandas
DataFrame по значениям в определенном столбце. Это мощный и гибкий способ анализа и обобщения данных, который является неотъемлемой частью обработки и анализа данных с помощьюpandas
.
Все записи, где погодные условия - туман
data[data['Weather Conditions'] == 'Fog'].head()
data[data['Weather Conditions'] == 'Fog'].head()
— это выражение индексации pandas
, которое используется для выбора строк из data
DataFrame на основе значений в столбце 'Weather Conditions'
.
Это выражение использует индексирование для выбора строк из data
DataFrame, где значение столбца 'Weather Conditions'
равно 'Fog'
. Результирующий DataFrame содержит только те строки, в которых значение столбца 'Weather Conditions'
равно 'Fog'
.
Затем метод head
используется для возврата первых пяти строк результирующего DataFrame.
Например, если
data
DataFrame содержит следующие значения в столбце'Weather Conditions'
:
Облачно
Облачно
Солнечно
Дождь
Дождь
Дождь
Тогда выражение data[data['Weather Conditions'] == 'Fog'].head()
вернет пустой DataFrame, потому что нет строк, в которых значение столбца 'Weather Conditions'
равно 'Fog'
.
Это выражение можно использовать для фильтрации строк data
DataFrame на основе значений в столбце 'Weather Conditions'
. Это полезный способ выбора и отображения подмножества данных в DataFrame, и это важная часть исследования и анализа данных с помощью pandas
.
Все экземпляры при ясной погоде или видимости выше 40
data[(['Weather Conditions'] == 'Clear') | (data['Visibility_km'] > 40)]
data[(['Weather Conditions'] == 'Clear') | (data['Visibility_km'] > 40)]
— это выражение индексации pandas
, которое используется для выбора строк из data
DataFrame на основе значений в столбцах 'Weather Conditions'
и 'Visibility_km'
.
Это выражение использует индексирование для выбора строк из data
DataFrame на основе комбинации условий. Условия задаются с помощью оператора |
, который означает «или». Первое условие, ['Weather Conditions'] == 'Clear'
, выбирает строки, в которых значение столбца 'Weather Conditions'
равно 'Clear'
. Второе условие, data['Visibility_km'] > 40
, выбирает строки, в которых значение столбца 'Visibility_km'
больше 40
.
Оператор |
используется для объединения двух условий, а результирующий логический массив используется для индексации data
DataFrame. Результирующий DataFrame содержит только строки, в которых значение столбца 'Weather Conditions'
равно 'Clear'
или значение столбца 'Visibility_km'
больше 40
.
Найти все экземпляры, когда
A. Погода ясная, влажность выше 50
B. Видимость выше 40
data[(data['Weather Conditions'] == 'Clear') & (data['Rel Hum_%'] > 50) | (data['Visibility_km'] > 40)]
data[(data['Weather Conditions'] == 'Clear') & (data['Rel Hum_%'] > 50) | (data['Visibility_km'] > 40)]
— это выражение индексации pandas
, которое используется для выбора строк из data
DataFrame на основе значений в столбцах 'Weather Conditions'
, 'Rel Hum_%'
и 'Visibility_km'
.
Это выражение использует индексирование для выбора строк из data
DataFrame на основе комбинации условий. Условия задаются с помощью операторов &
и |
, которые обозначают «и» и «или» соответственно.
Первое условие, (data['Weather Conditions'] == 'Clear') & (data['Rel Hum_%'] > 50)
, выбирает строки, в которых значение столбца 'Weather Conditions'
равно 'Clear'
, а значение столбца 'Rel Hum_%'
больше 50
. Второе условие, data['Visibility_km'] > 40
, выбирает строки, в которых значение столбца 'Visibility_km'
больше 40
.
Операторы &
и |
используются для объединения двух условий, а результирующий логический массив используется для индексации data
DataFrame. Результирующий DataFrame содержит только строки, в которых значение столбца 'Weather Conditions'
равно 'Clear'
, а значение столбца 'Rel Hum_%'
больше 50
, или значение столбца 'Visibility_km'
больше 40
.
Например, если
data
DataFrame содержит следующие значения в столбцах'Weather Conditions'
,'Rel Hum_%'
и'Visibility_km'
:
Погодные условия Относительная влажность_% Видимость_км
Облачно 60 10
Облачно 50 20
Солнечно 40 30
Дождливо 30 40
Дождливо 20 50
Дождливо 10 60
Затем выражение data[(data['Weather Conditions'] == 'Clear') & (data['Rel Hum_%'] > 50) | (data['Visibility_km'] > 40)]
вернет новый кадр данных, содержащий строки, в которых значение столбца 'Weather Conditions'
равно 'Clear'
, а значение столбца 'Rel Hum_%'
больше 50
, или значение столбца 'Visibility_km'
больше 40
. Результирующий DataFrame будет пустым, поскольку нет строк, удовлетворяющих любому из этих условий.
Визуализации
import matplotlib.pyplot as plt # Extract the temperature and dew point temperature columns temp = data['Temp_C'] dew_point_temp = data['Dew Point Temp_C'] # Create the scatter plot plt.scatter(temp, dew_point_temp) # Add a title and axis labels plt.title('Temperature vs Dew Point Temperature') plt.xlabel('Temperature (°C)') plt.ylabel('Dew Point Temperature (°C)') # Show the plot plt.show()
# Extract the temperature and wind speed columns temp = data['Temp_C'] wind_speed = data['Wind Speed_km/h'] # Create the box plot plt.boxplot([temp, wind_speed], labels=['Temperature', 'Wind Speed']) # Add a title plt.title('Temperature and Wind Speed Distributions') # Show the plot plt.show()
# Extract the temperature column temp = data['Temp_C'] # Create the histogram plt.hist(temp) # Add a title and axis labels plt.title('Temperature Distribution') plt.xlabel('Temperature (°C)') plt.ylabel('Frequency') # Show the plot plt.show()
from mpl_toolkits.mplot3d import Axes3D # Extract the temperature, wind speed, and pressure columns temp = data['Temp_C'] wind_speed = data['Wind Speed_km/h'] pressure = data['Press_kPa'] # Create the 3D scatter plot fig = plt.figure() ax = fig.add_subplot(111, projection='3d') ax.scatter(temp, wind_speed, pressure) # Add a title and axis labels plt.title('Temperature, Wind Speed, and Pressure') ax.set_xlabel('Temperature (°C)') ax.set_ylabel('Wind Speed (km/h)') ax.set_zlabel('Pressure (kPa)') # Show the plot plt.show()
# Extract the humidity column humidity = data['Rel Hum_%'] # Create the histogram plt.hist(humidity) # Add a title and axis labels plt.title('Humidity Distribution') plt.xlabel('Humidity (%)') plt.ylabel('Frequency') # Show the plot plt.show()
В этом анализе мы использовали различные pandas
методы и функции для изучения и анализа набора данных, содержащего данные о погоде. Мы импортировали библиотеку pandas
и использовали функцию read_csv
для загрузки данных в DataFrame. Затем мы использовали различные методы и функции, в том числе head
, shape
, index
, columns
, dtypes
, unique
, nunique
, count
, value_counts
, info
, isnull
, notnull
, rename
, mean
, std
, var
и groupby
, чтобы обобщить и изучить данные.
Мы также использовали индексирование и логическое индексирование для выбора и фильтрации данных, а также использовали атрибут str
и метод contains
для выбора строк на основе строковых значений в определенных столбцах. Мы также использовали операторы &
и |
для объединения нескольких условий при выборе и фильтрации данных.
В целом, этот анализ продемонстрировал мощь и гибкость pandas
для изучения и анализа данных. Используя эти методы и функции, мы смогли получить представление о структуре и шаблонах данных, а также выбрать и отфильтровать данные, чтобы сосредоточиться на конкретных интересующих подмножествах. Это важная часть обработки и анализа данных, и pandas
предоставляет богатый набор инструментов и возможностей для работы с данными.
Для получения дополнительной информации проверьте мой github: