python如何獲取.csv文件中的某一列或者某些列
更新時間:2024年02月04日 09:28:18 作者:MqtGhj
這篇文章主要介紹了python如何獲取.csv文件中的某一列或者某些列問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
獲取.csv文件某一列或者某些列
1.把三個csv文件中
的feature值整合到一個文件中,同時添加相應的label。
# -*-coding:utf-8 -*-
import csv;
label1 = '1'
label2 = '2'
label3 = '3'
a = "feature1,feature2,feature3,feature4,feature5,feature6,feature7,feature8,feature9,feature10,label" + "\n"
with open("./dataset/dataTime2.csv", 'a') as rfile:
rfile.writelines(a)
with open("./dataset/f02.csv", 'rb') as file:
a = file.readline().strip()
while a:
a = a + ',' + label1 + "\n"
#a = label1 + ',' + a + "\n"
with open("./dataset/dataTime2.csv", 'a') as rfile:
rfile.writelines(a)
a = file.readline().strip()
with open("./dataset/g03.csv", 'rb') as file:
a = file.readline().strip()
while a:
a = a + ',' + label2 + "\n"
#a = label2 + ',' + a + "\n"
with open("./dataset/dataTime2.csv", 'a') as rfile:
rfile.writelines(a)
a = file.readline().strip()
with open("./dataset/normal05.csv", 'rb') as file:
a = file.readline().strip()
while a:
a = a + ',' + label3 + "\n"
#a = label3 + ',' + a + "\n"
with open("./dataset/dataTime2.csv", 'a') as rfile:
rfile.writelines(a)
a = file.readline().strip()2.獲取csv文件中某一列
下面可以獲得label為表頭的列中對應的所有數(shù)值。
filename = "./dataset/dataTime2.csv"
list1 = []
with open(filename, 'r') as file:
reader = csv.DictReader(file)
column = [row['label'] for row in reader]3.獲取csv文件中某些列
下面可以獲得除label表頭的對應列之外所有數(shù)值。
import pandas as pd odata = pd.read_csv(filename) y = odata['label'] x = odata.drop(['label'], axis=1) #除去label列之外的所有feature值
4.也可以處理成list[np.array]形式的數(shù)據(jù)
filename = "./dataset/dataTime2.csv"
list1 = []
with open(filename, 'r') as file:
a = file.readline()
while a:
c = np.array(a.strip("\n").split(","))
list1.append(c)5.也可以處理成tensor格式數(shù)據(jù)集
# -*-coding:utf-8 -*-
import tensorflow as tf
# 讀取的時候需要跳過第一行
filename = tf.train.string_input_producer(["./dataset/dataTime.csv"])
reader = tf.TextLineReader(skip_header_lines=1)
key, value = reader.read(filename)
record_defaults = [[1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.], tf.constant([], dtype=tf.int32)]
col1, col2, col3, col4, col5, col6, col7, col8, col9, col10, col11= tf.decode_csv(
value, record_defaults=record_defaults)
features = tf.stack([col1, col2, col3, col4, col5, col6, col7, col8, col9, col10])
with tf.Session() as sess:
# Start populating the filename queue.
coord = tf.train.Coordinator()
threads = tf.train.start_queue_runners(coord=coord)
trainx = []
trainy = []
for i in range(81000):
# Retrieve a single instance:
example, label = sess.run([features, col11])
trainx.append(example)
trainy.append(label)
coord.request_stop()
coord.join(threads)
#最后長度是81000,trainx是10個特征總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
python筆記之mean()函數(shù)實現(xiàn)求取均值的功能代碼
這篇文章主要介紹了python筆記之mean()函數(shù)實現(xiàn)求取均值的功能代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07
詳解Python解決抓取內(nèi)容亂碼問題(decode和encode解碼)
這篇文章主要介紹了Python解決抓取內(nèi)容亂碼問題(decode和encode解碼),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-03-03

