簡體   English   中英

Python是強類型語言,當創建DataFrame時,dtype = float會應用於只有浮點數才有意義的值嗎?

[英]Python is strongly typed language, dtype=float when create DataFrame would apply to the values only making sense to be float?

import pandas as pd
data = [['Alex',10],['Bob',12],['Clarke',13]]
df = pd.DataFrame(data,columns=['Name','Age'],dtype=float)
print df

在創建DataFrame時,我們將數據類型定義為float,但不將其命名為要更改為float的列。 我們將它留給python來決定是否根據值更改列數據類型是否有意義。

只是想知道,在這種做法上,這仍然是嚴格的強類型?

謝謝!

Python是一種強大的,動態類型的語言(請參閱Python強類型? )。

如果在構造pd.DataFrame時顯式傳遞dtype=floatPandas將嘗試強制所有列浮動。 在你的情況下,'Name'列不能被強制浮動,所以它將作為object保留(你可以把它想象為純Python中的str )。

通常,您可以將dtype留空以讓Pandas推斷DataFrames數據類型。 然后執行df.info()以查看dtypes是否對您有意義。 你不贊成的,你可以改變它們:

df['Age'] = df['Age'].astype(int)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM