![](/img/trans.png)
[英]Sending Pandas Dataframe with Int64 type to GCP Spanner INT64 column
[英]Change column type to int64 pandas geopandas best practice
我試圖將包含僅帶小數點.0的浮點數的列轉換為integer64。 我在該論壇上找到了一些較舊的答案 ,但它們似乎不再起作用。 最終我使用了:
df_test["column_name"] = df_test['column_name'].apply(lambda x: np.int64(x))
我想知道這是否是熊貓的最佳做法,以及與to_numeric()相比如何
在pandas
,這將起作用:
df_test['column_name'] = df_test['column_name'].astype('int64')
由於geopandas
是建立在pandas
之上的,因此它也應該起作用。 至於它與to_numeric
比較方式,它們都是矢量化的,並且就速度而言是可比較的:
測試速度astype
方法VS的to_numeric
一個適度規模的系列方法,我得到的平均0.00007522797584533691
秒astype
和0.0003248021602630615
秒to_numeric
。
如果需要最理想的整數格式,則為最佳選擇:
df_test["column_name"] = pd.to_numeric(df_test['column_name'], downcast='integer')
這是矢量化的, df.series.apply
是一個循環並且很慢。
如果您確實需要np.int64
,請參閱@sacul的解決方案 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.