Python 加载、读取CSV文件
import os
import sys
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
def Load_CSV_dataset(csv_file):
print(csv_file)
data = pd.read_csv(csv_file)
#print(data)
Id = pd.DataFrame(data, columns=['id'])
X = pd.DataFrame(data, columns=['x'])
Y = pd.DataFrame(data, columns=['y'])
G = pd.DataFrame(data, columns=['g'])
nseq = Id.to_numpy()
nx = X.to_numpy()
ny = Y.to_numpy()
ng = G.to_numpy()
seq = nseq.reshape(np.size(nseq))
x = nx.reshape(np.size(nx))
y = ny.reshape(np.size(ny))
g = ng.reshape(np.size(ng))
return seq,x,y,g
def Load_CSV_File(csv_file):
data = pd.read_csv(csv_file)
X = pd.DataFrame(data, columns=['dmaxz','davgz','dtheta','dmg','sstdev','cstddev'])
Y = pd.DataFrame(data, columns=['result']).replace({True: 1, False: 0}) # map True/False to Classes: 0,1,2,...
target_count = Y.value_counts()
x = X.to_numpy()
yn = Y.to_numpy()
y = yn.reshape(np.size(yn))
return x,y
def Load_CSV_Folder(csv_dir):
ext = "*.csv"
all_csv_files = [file
for path, subdir, files in os.walk(csv_dir)
for file in glob(os.path.join(path, ext))]
#print(all_csv_files)
X = np.empty((0, 6), float)
Y = np.array([])
for csv in all_csv_files:
x,y = Load_CSV_File(csv)
X = np.vstack((X, x))
Y = np.append(Y, y)
return X,Y
def Load_CSV_Dataset(path):
if os.path.isfile(path):
return Load_CSV_File(path)
if os.path.isdir(path):
return Load_CSV_Folder(path)
print('Err: can not load csv file')
sys.exit()
return [],[]
if __name__ == "__main__":
if len(sys.argv)<2:
print("Usage(parse csv file):\n ")
sys.exit()
#print(sys.argv[1:], type(sys.argv[1:]))
sys.exit(Run_Curve_Fitting(sys.argv[1:]))
评论已关闭