ฉันต้องการแสดงคอลัมน์ทั้งหมดในดาต้าเฟรมใน Jupyter Notebook Jupyter แสดงคอลัมน์บางคอลัมน์และเพิ่มจุดในคอลัมน์สุดท้ายดังภาพต่อไปนี้:
ฉันจะแสดงคอลัมน์ทั้งหมดได้อย่างไร
คำตอบ:
ลองใช้การตั้งค่าการแสดงผล max_columns ดังนี้:
import pandas as pd
from IPython.display import display
df = pd.read_csv("some_data.csv")
pd.options.display.max_columns = None
display(df)
หรือ
pd.set_option('display.max_columns', None)
แก้ไข: Pandas 0.11.0 ถอยหลัง
สิ่งนี้เลิกใช้แล้ว แต่ในเวอร์ชันของ Pandas ที่เก่ากว่า 0.11.0 max_columns
จะมีการระบุการตั้งค่าดังนี้:
pd.set_printoptions(max_columns=500)
with pd.option_context("display.max_rows", 10, "display.max_columns", 5):
(ดูตัวเลือกการรับและการตั้งค่า )
ฉันรู้ว่าคำถามนี้เก่าไปหน่อย แต่คำถามต่อไปนี้ใช้ได้กับฉันใน Jupyter Notebook ที่ใช้แพนด้า 0.22.0 และ Python 3:
import pandas as pd
pd.set_option('display.max_columns', <number of columns>)
คุณสามารถทำเช่นเดียวกันกับแถวได้เช่นกัน:
pd.set_option('display.max_rows', <number of rows>)
วิธีนี้ช่วยประหยัดการนำเข้า IPython และมีตัวเลือกเพิ่มเติมในเอกสาร pandas.set_option: https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.set_option.html
อาจจะเป็นเพราะฉันมีแพนด้ารุ่นเก่ากว่า แต่ในโน๊ตบุ๊ค Jupyter งานนี้สำหรับฉัน
import pandas as pd
from IPython.core.display import HTML
df=pd.read_pickle('Data1')
display(HTML(df.to_html()))
ฉันขอแนะนำให้ตั้งค่าตัวเลือกการแสดงผลภายในตัวจัดการบริบทเพื่อให้มีผลกับเอาต์พุตเดียวเท่านั้น หากคุณต้องการพิมพ์เวอร์ชัน html ที่ "สวย" ฉันจะกำหนดฟังก์ชันและแสดง dataframe df
โดยใช้force_show_all(df)
:
from IPython.core.display import display, HTML
def force_show_all(df):
with pd.option_context('display.max_rows', None, 'display.max_columns', None, 'display.width', None):
display(HTML(df.to_html()))
ดังที่คนอื่น ๆ กล่าวไว้โปรดใช้ความระมัดระวังในการเรียกสิ่งนี้บนดาต้าเฟรมที่มีขนาดพอสมควรเท่านั้น
คุณสามารถใช้ pandas.set_option () สำหรับคอลัมน์คุณสามารถระบุตัวเลือกเหล่านี้ได้
pd.set_option("display.max_rows", 200)
pd.set_option("display.max_columns", 100)
pd.set_option("display.max_colwidth", 200)
สำหรับคอลัมน์การพิมพ์แบบเต็มคุณสามารถใช้แบบนี้ได้
import pandas as pd
pd.set_option('display.max_colwidth', -1)
print(words.head())
หากคุณต้องการแสดงแถวทั้งหมดที่ตั้งค่าไว้เช่นร้อง
pd.options.display.max_rows = None
หากคุณต้องการแสดงคอลัมน์ทั้งหมดที่ตั้งค่าไว้เช่นร้อง
pd.options.display.max_columns = None