Pandas – это библиотека анализа данных, написанная в Python. В этом посте я покажу вам, насколько это возможно, чтобы помочь вам быстро получить некоторое понимание из разных наборов данных.
Установить Пьенв
Мы установим PENV Во-первых, Pyenv – это скрытый инструмент, если вы хотите использовать мульти Python в своем ноутбуке.
$ brew install pyenv
Установите Python 3 и Pandas
Мы используем Python 3 здесь
$ pyenv install 3.5.0 $ pyenv global 3.5.0 $ pyenv rehash $ pip install pandas
Начать кодирование!
Хорошо, давайте начнем наше приключение Pandas! Кстати Визуальный студийный код Лучший редактор для работы с пандами. Не забудьте установить Расширение Python
Во-первых, нам нужно импортировать библиотеку Pandas. Просто создать Demo.py
Файл и добавьте строку ниже.
import pandas as pd
Скачать Quiz.csv и users.json который используется для демонстрации демонстрации Pandas
Вы можете прочитать файл JSON, используя pd.read_json
, он будет хранить данные в DataFrame, вы можете представить себе dataframe, как виртуальный стол
## read data from json and store in dataframe user_df = pd.read_json('users.json') ## show first 5 data user_df.head()
Загрузите данные CSV, в основном ту же операцию, как указано выше, просто другой формат файла, Pandas поддерживает формат файла лота, как JSON, CSV, Excel …
quiz_df = pd.read_csv('quiz.csv') quiz_df.head()
Теперь мы можем начать найти некоторое понимание данных, сначала постараемся найти максимальный год в викторине
# find max year in quiz data max_years = quiz_df['years'].max() print(max_years)
Попробуйте получить данные с Max Gead в Quiz, Pandas используют логическую маску для фильтрации данных, вы найдете Boolean Mask – это мощный инструмент, когда вы хотите запросить данные с некоторыми усложными условиями
quiz_df['years'] == max_years quiz_df[quiz_df['years'] == max_years]
# aggregate average years in quiz data mean_years = quiz_df['years'].mean() print(mean_years) #%% # agregate familiar language count result = quiz_df["familiar language"].value_counts() print(result) #%% # find user using the most popular language popular_language = result.index[0] quiz_user_with_popular_language = quiz_df[quiz_df['familiar language']==popular_language] print(quiz_user_with_popular_language) # join quiz with user using right join #%% quiz_with_user = pd.merge(user_df, quiz_df, how='right', left_on = 'email', right_on = 'email') print(quiz_with_user) # drop na user data #%% result = quiz_with_user.dropna() print(result) # find user willing to use code editor result = result[result['will you want to use code editor']=='T']