Pandas選項和自定義
Pandas提供API來自定義其行爲的某些方面,大多使用來顯示。
API由五個相關函數組成。它們分別是 -
- get_option()
- set_option()
- reset_option()
- describe_option()
- option_context()
現在來了解函數是如何工作的。
get_option(param)
get_option(param)
需要一個參數,並返回下面輸出中給出的值 -
get_option
需要一個參數,並返回下面輸出中給出的值 -
display.max_rows
顯示默認值。解釋器讀取此值並顯示此值作爲顯示上限的行。
import pandas as pd
print ("display.max_rows = ", pd.get_option("display.max_rows"))
執行上面示例代碼,得到以下結果 -
display.max_rows = 60
display.max_columns
顯示默認值,解釋器讀取此值並顯示此值作爲顯示上限的行。
import pandas as pd
print ("display.max_columns = ", pd.get_option("display.max_columns"))
執行上面示例代碼,得到以下結果 -
display.max_columns = 20
這裏,60
和20
是默認配置參數值。
set_option(param,value)
set_option
需要兩個參數,並將該值設置爲指定的參數值,如下所示:
display.max_rows
使用set_option()
,可以更改要顯示的默認行數。
import pandas as pd
print ("before set display.max_rows = ", pd.get_option("display.max_rows"))
pd.set_option("display.max_rows",80)
print ("after set display.max_rows = ", pd.get_option("display.max_rows"))
執行上面示例代碼,得到以下結果 -
before set display.max_rows = 60
after set display.max_rows = 80
display.max_columns
使用set_option()
,可以更改要顯示的默認行數。
import pandas as pd
print ("before set display.max_columns = ", pd.get_option("display.max_columns"))
pd.set_option("display.max_columns",32)
print ("after set display.max_columns = ", pd.get_option("display.max_columns"))
執行上面示例代碼,得到以下結果 -
before set display.max_columns = 20
after set display.max_columns = 32
reset_option(param)
reset_option
接受一個參數,並將該值設置爲默認值。
display.max_rows
使用reset_option()
,可以將該值更改回顯示的默認行數。
import pandas as pd
pd.set_option("display.max_rows",32)
print ("after set display.max_rows = ", pd.get_option("display.max_rows"))
pd.reset_option("display.max_rows")
print ("reset display.max_rows = ", pd.get_option("display.max_rows"))
執行上面示例代碼,得到以下結果 -
after set display.max_rows = 32
reset display.max_rows = 60
describe_option(param)
describe_option
打印參數的描述。
display.max_rows
使用reset_option()
,可以將該值更改回顯示的默認行數。
import pandas as pd
pd.describe_option("display.max_rows")
執行上面示例代碼,得到以下結果 -
display.max_rows : int
If max_rows is exceeded, switch to truncate view. Depending on
`large_repr`, objects are either centrally truncated or printed as
a summary view. 'None' value means unlimited.
In case python/IPython is running in a terminal and `large_repr`
equals 'truncate' this can be set to 0 and pandas will auto-detect
the height of the terminal and print a truncated object which fits
the screen height. The IPython notebook, IPython qtconsole, or
IDLE do not run in a terminal and hence it is not possible to do
correct auto-detection.
[default: 60] [currently: 60]
option_context()
option_context
上下文管理器用於臨時設置語句中的選項。當退出使用塊時,選項值將自動恢復 -
display.max_rows
使用option_context()
,可以臨時設置該值。
import pandas as pd
with pd.option_context("display.max_rows",10):
print(pd.get_option("display.max_rows"))
print(pd.get_option("display.max_rows"))
執行上面示例代碼,得到以下結果 -
10
10
請參閱第一和第二個打印語句之間的區別。第一個語句打印由option_context()
設置的值,該值在上下文中是臨時的。在使用上下文之後,第二個打印語句打印配置的值。
常用參數,請參考下表 -
編號
參數
描述
1
display.max_rows
要顯示的最大行數
2
display.max_columns
要顯示的最大列數
3
display.expand_frame_repr
顯示數據幀以拉伸頁面
4
display.max_colwidth
顯示最大列寬
5
display.precision
顯示十進制數的精度