Я написал сценарий на Jupyter, который прилагается. В конце выводятся две таблицы, расположенные рядом, как показано ниже.
Хотя я получил результат в Jupyter, когда я запускал ту же программу в Spyder, я не мог получить тот же результат. Есть ли способ сделать это в Spyder?
PS: Файлы были токенами от соревнование kaggle:
To run this script you need only
product_category_name_english.csv
,olist_products_dataset.csv
andolist_order_items_dataset.csv
data files
Код:
import pandas as pd
import numpy as np
from IPython.display import display, HTML
def Problem(file_name1, file_name2, file_name3):
product_category = pd.read_csv(file_name1, sep = ",")
product_category.head()
olist_products = pd.read_csv(file_name2, sep = ",")
olist_products.head()
olist_order = pd.read_csv(file_name3, sep = ",")
olist_order.head()
data = pd.merge(pd.merge(product_category, olist_products), olist_order)
data["freight_percent"] = (data["freight_value"]/(data["freight_value"]+data["price"]))*100
Data_Categorized = data.pivot_table(index = "product_category_name_english", values=(["freight_percent"]), aggfunc = "mean")
top_10 = Data_Categorized.sort_values("freight_percent", ascending=False)[:10]
top_10 = top_10.reset_index()
top_10.index = top_10.index+1
bottom_10 = Data_Categorized.sort_values("freight_percent")[:10]
bottom_10 = bottom_10.reset_index()
bottom_10.index = bottom_10.index+1
result = pd.concat([top_10, bottom_10], axis=1, sort=False)
print("\t\t\033[94m\033[1mTOP 10 \t\t\t\t BOTTOM 10")
display (result)
Problem("product_category_name_translation.csv","olist_products_dataset.csv","olist_order_items_dataset.csv")
Прекратите размещать несколько операторов в одной строке. Кроме того, эти вызовы head
бессмысленны.
@prashantrana: Я одобрил вашу правку. Однако, пожалуйста, не добавляйте блоки цитат для вещей, которые не являются цитатами - они предназначены для выделения того, что звучит голосом другого человека / речи / книги / руководства и т. д.
@halfer спасибо. я буду помнить это.
Вывод @DylanSmith Spyder не отображается как jupyter, я хочу отображать два df рядом, поэтому я использовал concat в своем скрипте. Если я хочу отображать два df отдельно, spyder работает хорошо, моя цель - показать два df в одной строке бок о бок
Возможно, вам придется использовать другой метод для вывода результата. Spyder и Jupyter довольно сильно отличаются в нескольких отношениях; возможно, попробуйте просто распечатать результат на консоли или вывести его как отдельную электронную таблицу. Или, если вы просто хотите посмотреть на это в Spyder, используйте вкладку Variable Explorer и откройте свой фрейм данных ...
Что не так с выводом Spyder?