網(wǎng)站首頁 編程語言 正文
csv文件是一種用,和換行符區(qū)分?jǐn)?shù)據(jù)記錄和字段的一種文件結(jié)構(gòu),可以用excel表格編輯,也可以用記事本編輯,是一種類excel的數(shù)據(jù)存儲文件,也可以看成是一種數(shù)據(jù)庫。pandas提供了pd.read_csv()方法可以讀取其中的數(shù)據(jù)并且轉(zhuǎn)換成DataFrame數(shù)據(jù)幀。python的強大之處就在于他可以把不同的數(shù)據(jù)庫類型,比如txt/csv/.xls/.sql轉(zhuǎn)換成統(tǒng)一的DataFrame格式然后進(jìn)行統(tǒng)一的處理。真是做到了標(biāo)準(zhǔn)化。我們可以用以下代碼來演示csv文件的讀取操作。
import pandas as pd
data1 = pd.read_csv('rating.csv')
print(data1)
print("************取消第一行作為表頭*************")
data2 = pd.read_csv('rating.csv',header=None)
print(data2)
print("************為各個字段取名**************")
data3 = pd.read_csv('rating.csv',names=['user_id','book_id','rating'])
print(data3)
print("***********將某一字段設(shè)為索引***************")
data3 = pd.read_csv('rating.csv',
names=['user_id','book_id','rating'],
index_col = "user_id")
print(data3)
print("************用sep參數(shù)設(shè)置分隔符**************")
data4 = pd.read_csv('rating.csv',
names=['user_id','book_id','rating'],
sep=',')
print(data4)
print("************自動補全缺失數(shù)據(jù)為NaN**************")
data5 = pd.read_csv('data.csv',header=None)
print(data5)
輸出的結(jié)果如下:
? ?1 ? 258 ?5
0 ?2 ?4081 ?4
1 ?2 ? 260 ?5
2 ?2 ?9296 ?5
3 ?2 ?2318 ?3
4 ?2 ? ?26 ?4
5 ?2 ? 315 ?3
6 ?2 ? ?33 ?4
7 ?2 ? 301 ?5
************取消第一行作為表頭*************
? ?0 ? ? 1 ?2
0 ?1 ? 258 ?5
1 ?2 ?4081 ?4
2 ?2 ? 260 ?5
3 ?2 ?9296 ?5
4 ?2 ?2318 ?3
5 ?2 ? ?26 ?4
6 ?2 ? 315 ?3
7 ?2 ? ?33 ?4
8 ?2 ? 301 ?5
************為各個字段取名**************
? ?user_id ?book_id ?rating
0 ? ? ? ?1 ? ? ?258 ? ? ? 5
1 ? ? ? ?2 ? ? 4081 ? ? ? 4
2 ? ? ? ?2 ? ? ?260 ? ? ? 5
3 ? ? ? ?2 ? ? 9296 ? ? ? 5
4 ? ? ? ?2 ? ? 2318 ? ? ? 3
5 ? ? ? ?2 ? ? ? 26 ? ? ? 4
6 ? ? ? ?2 ? ? ?315 ? ? ? 3
7 ? ? ? ?2 ? ? ? 33 ? ? ? 4
8 ? ? ? ?2 ? ? ?301 ? ? ? 5
***********將某一字段設(shè)為索引***************
? ? ? ? ?book_id ?rating
user_id ? ? ? ? ? ? ? ??
1 ? ? ? ? ? ?258 ? ? ? 5
2 ? ? ? ? ? 4081 ? ? ? 4
2 ? ? ? ? ? ?260 ? ? ? 5
2 ? ? ? ? ? 9296 ? ? ? 5
2 ? ? ? ? ? 2318 ? ? ? 3
2 ? ? ? ? ? ? 26 ? ? ? 4
2 ? ? ? ? ? ?315 ? ? ? 3
2 ? ? ? ? ? ? 33 ? ? ? 4
2 ? ? ? ? ? ?301 ? ? ? 5
************用sep參數(shù)設(shè)置分隔符**************
? ?user_id ?book_id ?rating
0 ? ? ? ?1 ? ? ?258 ? ? ? 5
1 ? ? ? ?2 ? ? 4081 ? ? ? 4
2 ? ? ? ?2 ? ? ?260 ? ? ? 5
3 ? ? ? ?2 ? ? 9296 ? ? ? 5
4 ? ? ? ?2 ? ? 2318 ? ? ? 3
5 ? ? ? ?2 ? ? ? 26 ? ? ? 4
6 ? ? ? ?2 ? ? ?315 ? ? ? 3
7 ? ? ? ?2 ? ? ? 33 ? ? ? 4
8 ? ? ? ?2 ? ? ?301 ? ? ? 5
************自動補全缺失數(shù)據(jù)為NaN**************
? ? 0 ? ?1 ? 2 ? ? 3 ? 4
0 ? 1 ?2.0 ? 3 ? 4.0 ? 5
1 ? 6 ?7.0 ? 8 ? NaN ?10
2 ?11 ?NaN ?13 ?14.0 ?15
[Finished in 4.5s]
對代碼的具體解釋,可以參考星號隔離bar中的注釋。
原文鏈接:https://blog.csdn.net/weixin_41855010/article/details/104287348
相關(guān)推薦
- 2022-08-30 五個Python命令使用的小妙招分享_python
- 2022-09-21 .NET中求復(fù)雜類型集合的差集、交集、并集_實用技巧
- 2022-12-04 使用python下載大型文件顯示進(jìn)度條和下載時間的操作代碼_python
- 2022-02-16 Flutter無context頁面跳轉(zhuǎn)及獲取全局context
- 2023-04-29 C++數(shù)組模擬之單鏈表與雙鏈表和棧和隊列的實現(xiàn)過程_C 語言
- 2022-07-02 使用Element Plus <script lang=“ts“ setup> 加上lang=“ts
- 2022-10-29 Centos8系統(tǒng)配置Redis實現(xiàn)開機自啟
- 2022-09-15 SQL?bool盲注和時間盲注詳解_MsSql
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支