পান্ডাস: নং সেটিং। সর্বাধিক সারি


138

নিম্নলিখিতগুলি দেখতে আমার সমস্যা হচ্ছে DataFrame:

n = 100
foo = DataFrame(index=range(n))
foo['floats'] = np.random.randn(n)
foo

সমস্যাটি হ'ল এটি আইফন নোটবুকে প্রতি সারি সমস্ত ডিফল্ট মুদ্রণ করে না, তবে ফলাফল সারিগুলি দেখতে আমাকে টুকরো টুকরো করতে হবে। এমনকি নিম্নলিখিত বিকল্পটি আউটপুট পরিবর্তন করে না:

pd.set_option('display.max_rows', 500)

কেউ কীভাবে পুরো অ্যারেটি প্রদর্শন করতে জানেন?


আমি যখন আপনার কোডটি একটি ডিফল্ট (যেমন কোনও বিশেষ কনফিগারেশন প্রোফাইল নয়) নোটবুকে চালিত করি তখন আমি একটি সুন্দর মুদ্রিত সারণী পাই যা সমস্ত মান সহ স্ক্রোলযোগ্য। অবগতির জন্য, আমার পান্ডাস .__ version__ = 0.9.1 (না নিশ্চিত এই বিষয়ে যদি থাকে)
BubbleGuppies

আমার অর্থ নিয়মিত শেল, আইপথন নয়
রায়ান স্যাক্সে

আমার মনে হচ্ছে এটি 0.11 + ... এ একটি বাগ হতে পারে ...
অ্যান্ডি

হাই অ্যান্ডি. এটি ইতিমধ্যে ওয়েস দ্বারা নিশ্চিত করা হয়েছে? আমি এই বাগটি কোথায় ফাইল করতে পারি? এখানে কি কাজ আছে?
অ্যান্ডি

আমি কেবল এটি এখানে ফাইল করেছি, আমি জানি যে 0.11 এর মধ্যে ডেটাফ্রেম রিপ্রেতে শেষ মুহুর্তের কিছু পরিবর্তন হয়েছিল তাই আমি বাগ রিপোর্টটিতে সিসি'ড করেছি। আপনাকে পুনরায় কাজ করতে দেবে।
অ্যান্ডি হেইডেন

উত্তর:


233

সেট করুন display.max_rows:

pd.set_option('display.max_rows', 500)

পান্ডার পুরানো সংস্করণগুলির জন্য (<= 0.11.0) আপনার display.heightএবং উভয়ই পরিবর্তন করতে হবে display.max_rows

pd.set_option('display.height', 500)
pd.set_option('display.max_rows', 500)

এছাড়াও দেখুন pd.describe_option('display')

আপনি কেবলমাত্র একবারের জন্য অস্থায়ীভাবে একটি বিকল্প সেট করতে পারেন :

from IPython.display import display
with pd.option_context('display.max_rows', 100, 'display.max_columns', 10):
    display(df) #need display to show the dataframe when using with in jupyter
    #some pandas stuff

আপনি কোনও বিকল্পটিকে এর ডিফল্ট মানটিতে পুনরায় সেট করতে পারেন:

pd.reset_option('display.max_rows')

এবং তাদের সকলকে পুনরায় সেট করুন:

pd.reset_option('all')


6
+1 pd.describe_option ('প্রদর্শন') এর জন্য, আমি সমস্ত বিকল্প জানতাম না
নাম-সোম-

41
উচ্চতা এখন হ্রাস করা হয়েছে সুতরাং প্রদর্শন.ম্যাক্স_আরো বিকল্পটি যথেষ্ট।
hanleyhansen

9
যে কেউ কেবল গ্রহণযোগ্য উত্তরের দিকে তাকিয়ে আছেন: with pd.option_context('display.height', 500, 'display.max_rows', 500):কেবলমাত্র এইগুলি অস্থায়ীভাবে সেট করতে ব্যবহার করুন ।
বলপয়েন্টবেন

আমার এটিকে অর্জনের সর্বোত্তম উপায়টি সংশোধন করা বা দেওয়া উচিত। কোনওটিই ব্যবহার করুন না এবং 500 এর মধ্যে সীমাবদ্ধ রাখবেন না # কোডটি থাকা ঘরে তাই অন্য কক্ষে পুনরায় সেট করার দরকার নেই no
এমজিবি.পি

35

ব্যক্তিগতভাবে, আমি সরাসরি একটি অ্যাসাইনমেন্ট স্টেটমেন্টের সাহায্যে অপশনগুলি সেট করতে পছন্দ করি কারণ আইপিথনকে ধন্যবাদ ট্যাব সমাপ্তির মাধ্যমে খুঁজে পাওয়া সহজ। সঠিক বিকল্পের নামগুলি কী তা মনে রাখা আমার পক্ষে কঠিন, তাই এই পদ্ধতিটি আমার পক্ষে কাজ করে।

উদাহরণস্বরূপ, আমাকে যা মনে রাখতে হবে তা হ'ল এটি দিয়েই pd.options

pd.options.<TAB>

এখানে চিত্র বর্ণনা লিখুন

বেশিরভাগ বিকল্পের অধীনে উপলব্ধ display

pd.options.display.<TAB>

এখানে চিত্র বর্ণনা লিখুন

এখান থেকে, আমি সাধারণত বর্তমান মানটি এর মতো আউটপুট করি:

pd.options.display.max_rows
60

আমি তারপরে যা চাই তা সেট করে রাখি:

pd.options.display.max_rows = 100

এছাড়াও, বিকল্পগুলির জন্য আপনার প্রসঙ্গ পরিচালক সম্পর্কে সচেতন হওয়া উচিত, যা সাময়িকভাবে কোডের একটি ব্লকের ভিতরে বিকল্পগুলি সেট করে। স্ট্রিং হিসাবে বিকল্পের নামে পাস করুন তারপরে মানটি যা আপনি চান তা অনুসরণ করে। আপনি একই লাইনে যে কোনও সংখ্যক বিকল্পে পাস করতে পারেন:

with pd.option_context('display.max_rows', 100, 'display.max_columns', 10):
    some pandas stuff

আপনি কোনও বিকল্পটিকে এর ডিফল্ট মানটিতে পুনরায় সেট করতে পারেন:

pd.reset_option('display.max_rows')

এবং তাদের সকলকে পুনরায় সেট করুন:

pd.reset_option('all')

এর মাধ্যমে বিকল্পগুলি সেট করা এখনও পুরোপুরি ভাল pd.set_option। আমি শুধু বৈশিষ্ট্যাবলী ব্যবহার সরাসরি সহজ এবং কম জন্য প্রয়োজন নেই এটি get_optionএবং set_option


4
with pd.option_contextএই উত্তরের মধ্যে পরিষ্কার পদ্ধতি; কমপক্ষে পার্শ্ব প্রতিক্রিয়া।
আইজোসেফ

10

এটি ইতিমধ্যে এই মন্তব্যে এবং এই উত্তরে নির্দেশিত হয়েছিল , তবে আমি প্রশ্নের আরও সরাসরি উত্তর দেওয়ার চেষ্টা করব:

from IPython.display import display
import numpy as np
import pandas as pd

n = 100
foo = pd.DataFrame(index=range(n))
foo['floats'] = np.random.randn(n)

with pd.option_context("display.max_rows", foo.shape[0]):
    display(foo)

pandas.option_context প্যান্ডাস 0.13.1 ( প্যান্ডাস 0.13.1 রিলিজ নোট ) থেকে পাওয়া যায়। এই অনুযায়ী ,

[এটি] [গুলি] আপনাকে বিকল্পগুলির একটি সেট সহ একটি কোডব্লক কার্যকর করতে দেয় যা আপনি যখন ব্লক দিয়ে প্রস্থান করে পূর্বের সেটিংসে ফিরে আসে।


9

@ হ্যানলিহানসেন যেমন একটি মন্তব্যে উল্লেখ করেছেন, সংস্করণ ০.০৮.১ অনুসারে, display.heightবিকল্পটি হ্রাস করা হয়েছে, এবং " display.max_rowsপরিবর্তে ব্যবহার করুন" বলে। সুতরাং আপনাকে কেবল এটির মতো কনফিগার করতে হবে:

pd.set_option('display.max_rows', 500)

দেখুন রিলিজ নোট - 0.18.1 ডকুমেন্টেশন পান্ডাস :

অবমুক্ত ডিসপ্লে.উইচ, ডিসপ্লে.উইথথ এখন কেবলমাত্র একটি ফর্ম্যাটিং বিকল্প <0.11.0 এর মতো সংক্ষিপ্তসার ট্রিগার নিয়ন্ত্রণ করে না।



3

মতই এই উত্তরটি একটি থেকে অনুরূপ প্রশ্ন , সেটিংস হ্যাক করুন কোন প্রয়োজন নেই। এটি লিখতে অনেক সহজ:

print(foo.to_string())

1
আপনি এটি স্ট্রিং রূপান্তর করা উচিত নয়। অ্যান্ডি যা চেয়েছিল তা নয়।
সিমটিম করুন

1
@ সিমটিম অ্যান্ডি "পুরো অ্যারেটি কীভাবে প্রদর্শন করবেন" জিজ্ঞাসা করেছিলেন। এটি এটি করবে এবং গৃহীত উত্তরের চেয়ে অনেক সহজ।
নিনজাকানন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.