python資料處理常見問題集

2021-10-09 21:31:40 字數 1212 閱讀 2287

今天遇到很奇怪的現象,就是pandas從csv裡面讀取資料,然後轉化為array,shape的時候裡面沒有東西。

1首先是使用csv的方法,寫入到csv格式中,其中使用

csv_writer.writerow([y_data[i],shrink])方法寫入到檔案中,

注意:要將shrink轉化成list,不然生成進去會有省略號

2現在使用pandas的方法,進行read_csv:

df = pd.read_csv(『data_test.csv』)

data = df.values

這樣整個data是乙個陣列,但是裡面是存在單引號的陣列,所以你shape出來就是(),現在如何解決這個問題?

首先將資料中 二維陣列轉化成一維陣列,如果不轉化成一維陣列,裡面會出現array的字串,其次使用data1=eval(data1) 方法 即可!

附上**

import re

import pandas as pd

import numpy as np #進行具體的sum,count等計算時候要用到的

import matplotlib.pyplot as plt # plt 用於顯示

df = pd.read_csv('data_test.csv')

data = df.values

print(type(data))

print(data[:, 0].shape) #標籤

data1=data[:, 1][8]

data1=eval(data1)

print(type(data1),np.array(data1))

#data2 = np.array(data1)

# data2 = data1.replace("'","")

data2 = np.array(data1)

#data2 = eval(list(data2))

print(type(data2),data2.shape)

data2=data2.reshape(200,100)

#print(data2[1:].shape)

plt.imshow(data2)

plt.show()

衛星測高資料處理常見問題

1.時間轉換 用matlab從jason 2的nc檔案中讀出的時間 time 20hz 單位,從資料說明中可以看出是以秒為單位,從2000 01 01 00 00 00.0開始 time field tai utc difference is the difference between tai a...

衛星測高資料處理常見問題

1.時間轉換 用matlab從jason 2的nc檔案中讀出的時間 time 20hz 單位,從資料說明中可以看出是以秒為單位,從2000 01 01 00 00 00.0開始 time field tai utc difference is the difference between tai a...

Python安裝常見問題處理

環境 系統 win7 64位 python版本 python27 2.7.14 問題現象 通過開始選單啟動 idle python gui 程式一直無反應,然後使用cmd進入python.exe所在目錄 預設路徑 c python27 執行python指令,提示 importerror no mod...