使用pandas處理CSV檔案

2021-09-26 16:34:30 字數 3858 閱讀 7559

import csv

import numpy as np

import pandas as pd

data_path =

'test.csv'

# 檔案路徑

# 讀csv

data = pd.read_csv(data_path)

print

('返回資料格式:'

,type

(data)

)col_labels = np.array(data.columns)

# labels

print

('==> labels of cols:'

, col_labels)

values = np.array(data.values)

# values

print

('==> values:'

, values)

shape = data.shape # shape

print

('==> shape:'

, shape)

size = data.size # size

print

('==> size:'

, size)

ndim = data.ndim # ndim

print

('==> ndim:'

, ndim)

axes = data.axes # axes

print

('==> axes'

, axes)

# 使用索引獲取該列的所有值

# 返回資料格式為 pandas.core.series.series

names = data[

'name'

]print

('==> names:'

, names)

# print()

print

('===> original data:'

)data

返回資料格式: ==> labels of cols: ['name' '***' 'age' 'score']

==> values: [['tom' 'man' 20 220]

['jim' 'man' 22 225]

['mary' 'woman' 24 205]]

==> shape: (3, 4)

==> size: 12

==> ndim: 2

==> axes [rangeindex(start=0, stop=3, step=1), index(['name', '***', 'age', 'score'], dtype='object')]

==> names: 0 tom

1 jim

2 mary

name: name, dtype: object

===> original data:

name

***age

score

0tom

man20

2201

jimman

22225

2mary

woman

24205

# 增加列

id= pd.series(

['12138'

,'12139'

,'12140'

], name=

'id'

)new_data = data.join(

id)

new_data

name

***age

scoreid0

tomman

20220

12138

1jim

man22

22512139

2mary

woman

24205

12140

# 增加行

defadd_element

(attr, val)

: temp = attr.to_list(

)return pd.series(temp, name=attr.name)

defadd_row

(old_data, values)

: index = old_data.columns.to_list(

) temp =

for i in

range

(len

(index)):

], values[i]))

new_data = pd.dataframe(temp)

return new_data.t

new_data = add_row(new_data,

['jane'

,'woman',20

,236

,'12141'])

new_data

name

***age

scoreid0

tomman

20220

12138

1jim

man22

22512139

2mary

woman

24205

12140

3jane

woman

20236

12141

new_data_2 = new_data.drop(

'id'

, axis=1)

new_data_2

name

***age

score

0tom

man20

2201

jimman

22225

2mary

woman

24205

3jane

woman

20236

new_data_3 = new_data.drop([1

,2], axis=0)

new_data_3

name

***age

scoreid0

tomman

20220

12138

3jane

woman

20236

12141

# 修改值

new_data[

'score'][

0]=300

new_data[

'name'][

0]='tim'

new_data

name

***age

scoreid0

timman

20300

12138

1jim

man22

22512139

2mary

woman

24205

12140

3jane

woman

20236

12141

# 寫入新檔案

new_data.to_csv(

'new_test.csv'

)

pandas處理csv檔案

機器學習離不開資料,資料分析離不開pandas。首先,我們拿到乙個excel表,我們將之另存為csv檔案。因為檔案是實驗室的資源,我就不分享了。首先是檔案讀取 def load csv filename data pd.read csv filename data data.drop data.co...

Python使用pandas處理CSV檔案

python中有許多方便的庫可以用來進行資料處理,尤其是numpy和pandas,再搭配matplot畫圖專用模組,功能十分強大。csv comma separated values 格式的檔案是指以純文字形式儲存的 資料,這意味著不能簡單的使用excel 工具進行處理,而且excel 處理的資料量...

Python使用pandas處理CSV檔案

python中有許多方便的庫可以用來進行資料處理,尤其是numpy和pandas,再搭配matplot畫圖專用模組,功能十分強大。csv comma separated values 格式的檔案是指以純文字形式儲存的 資料,這意味著不能簡單的使用excel 工具進行處理,而且excel 處理的資料量...