чтение определенного столбца CSV в массив (Python) - PullRequest
0 голосов
/ 26 сентября 2018

Итак, у меня есть список данных, подобных этому:

"Load (lbf)","Time (s)","Extension (in)","Stress (ksi)","Strain (in/in)"

103.2,0.30,0.008,1.160,0.00228
172.4,0.50,0.009,1.939,0.00246
241.8,0.70,0.010,2.718,0.00264
311.2,0.90,0.010,3.500,0.00282...

Что я по сути пытаюсь сделать, это преобразовать его в таблицу с разделителями табуляции, чтобы ее можно было скопировать в оригинал или в Excel.План сделать это - прочитать каждый столбец в массив и записать его обратно с вкладками в качестве разделения.Проблема в том, что у меня мало формального обучения написанию кода, и я не делал этого в течение нескольких месяцев, поэтому чтение по SE не особенно полезно (редко люди объясняют, что их код делает построчно.)Я сталкиваюсь с чтением данных, кажется, не хочет играть.Я пробовал:

file=str(input("enter filepath: "))
hdr=int(input("enter number of lines before data: "))
def read(file, convert=float, sep=","):
    with open(file) as f:
        for i in range(hdr):
            next(f)

        for line in f:
            load.append(col[1])

А также:

file=str(input("enter filepath: "))
hdr=int(input("enter number of lines before data: "))
def read(file, convert=float, sep=","):
     with open(file) as f:
        for i in range(hdr):
            next(f)
        for line in f:

          extension.append[convert(line.split(sep=',')[3]) for line in f]

Не выдается никаких ошибок, но он просто ничего не делает.любые советы будут очень полезны.

1 Ответ

0 голосов
/ 26 сентября 2018

Возможно, вы захотите использовать пакет pandas, который специализируется на обработке и манипулировании данными.В частности, есть функция read_csv, которая принимает CSV-файл и сохраняет его как DataFrame (структура данных Panda).Затем вы можете повторно вывести его как другой CSV, но на этот раз, указав разделение на вкладки \t.

import pandas as pd
data = pd.read_csv('data.csv')  # load dataset into a Pandas dataframe
data.head()  # inspect first 5 rows in your dataset to make sure all is well
data.to_csv('new_data.csv', sep='\t', index=False)  # output with tab separated values
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...