網站首頁 編程語言 正文
Python中和Pandas中數據類型對應關系如下:
- 果數據是純凈的數據,可以轉化為數字
- astype基本也就是兩種用作,數字轉化為單純字符串,單純數字的字符串轉化為數字,含有其他的非數字的字符串是不能通過astype進行轉化的。
- 需要引入其他的方法進行轉化,也就有了下面的自定義函數方法
astype()是最常見也是最通用的數據類型轉換方法
import pandas as pd
df = pd.DataFrame([['liver','E',89,21,24,64],
['Arry','C',36,37,37,57],
['Ack','A',57,60,18,84],
['Eorge','C',93,96,71,78],
['Oah','D',65,49,61,86]
],
columns = ['name','team','Q1','Q2','Q3','Q4'])
res = df.dtypes
df.Q1.astype('int32').dtypes # dtype('int32')
df.astype({'Q1':'int32','Q2':'int32'}).dtypes
結果展示
df
res
?擴展
# 以下是一些使用示例:
df.index.astype('int64') # 索引類型轉換
df.astype('int32') # 所有數據轉換為int32
df.astype({'col1':'int32'}) # 指定字段轉指定類型
s.astype('int64')
s.astype('int64',copy = False) # 不與原數據關聯
df['name'].astype('object')
data['Q4'].astype('float')
s.astype('datatime64[ns]') # 轉為時間類型
data['狀態'].astype('bool')
數據類型
df.dtypes會返回每個字段的數據類型及DataFrame整體的類型
如果是Series,需要用s.dtype
import pandas as pd
df = pd.DataFrame([['liver','E',89,21,24,64],
['Arry','C',36,37,37,57],
['Ack','A',57,60,18,84],
['Eorge','C',93,96,71,78],
['Oah','D',65,49,61,86]
],
columns = ['name','team','Q1','Q2','Q3','Q4'])
df.dtypes
s = pd.Series(['One','Two','Three'])
s.dtype
結果展示
df
s
當數據的格式不具備轉換為目標類型的條件時,需要先對數據進行處理
例如“89.3%”是一個字符串,要轉換為數字,要先去掉百分號:
# 將"89.3%"這樣的文本轉為浮點數
data.rate.apply(lambda x:x.replace('%','')).astype('float')/100
加載數據時可以指定數據各列的類型:
import pandas as pd
# 對所有字段指定統一類型
df = pd.DataFrame(data, dtype = 'float32')
# 對每個字段分別指定
df = pd.read_excel(data, dtype = {'team':'string','Q1':'int32'})
原文鏈接:https://blog.csdn.net/Hudas/article/details/122921649
相關推薦
- 2022-08-14 hyper-v如何配置NAT網絡的實現_Hyper-V
- 2022-04-19 c#中task與thread區別及其使用的方法示例_C#教程
- 2024-01-11 使用@RestController跳轉頁面
- 2022-04-25 C#使用NPOI實現Excel和DataTable的互轉_C#教程
- 2022-08-25 Python??中的pass語句語法詳析_python
- 2022-10-08 詳解pytest分布式執行插件?pytest-xdist?的高級用法_python
- 2022-09-29 shell函數內調用另一個函數(不帶返回值和帶返回值)_linux shell
- 2022-09-19 Python使用read_csv讀數據遇到分隔符問題的2種解決方式_python
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支