Сохранение заголовка из файла CSV с помощью `numpy.genfromtxt ()` - PullRequest
0 голосов
/ 09 июня 2019

Я использую numpy.genfromtxt() для чтения в файле CSV, и я хотел бы сохранить заголовок отдельно от данных ниже заголовка.

Я знаю, что параметр skip_header=1 позволяет мне пропустить заголовок, но в этом случае заголовок потерян, но я бы хотел его сохранить.Я попытался использовать параметр skip_footer таким образом, чтобы он пропускал все ниже заголовка и оставлял только заголовок, задав skip_footer равным длине файла CSV или skip_footer=(len('filename.csv')-1).Код выполняется, но не дает правильного вывода.Так или иначе, numpy.genfromtxt() не считает строки файла CSV так, как я себе представляю.

header = numpy.genfromtxt('filename.csv', delimiter=',', skip_footer=(len('filename.csv')-1))

Я ожидал получить только заголовок в виде 1-D массива NumPy, вместо этого яполучить что-то похожее на весь массив:

[[      nan       nan       nan ...       nan       nan       nan]
 [2.016e+03 1.000e+00 1.000e+00 ... 1.165e+01 6.999e+01 1.000e+00]
 [2.016e+03 1.000e+00 1.000e+00 ... 8.000e+00 5.430e+01 1.000e+00]
 ...
 [2.016e+03 6.000e+00 3.000e+01 ... 0.000e+00 4.630e+01 2.000e+00]
 [2.016e+03 6.000e+00 3.000e+01 ... 8.750e+00 5.255e+01 1.000e+00]
 [2.016e+03 6.000e+00 3.000e+01 ... 8.880e+00 5.822e+01 1.000e+00]]

Я хочу сохранить только то, что находится в верхнем ряду nan s.

1 Ответ

0 голосов
/ 09 июня 2019

РЕШЕНИЕ:

header = np.genfromtxt('filename.csv', delimiter=',', dtype=str, max_rows=1)
print(header)

ВЫХОД:

['pickup_year' 'pickup_month' 'pickup_day' 'pickup_dayofweek'
 'pickup_time' 'pickup_location_code' 'dropoff_location_code'
 'trip_distance' 'trip_length' 'fare_amount' 'fees_amount' 'tolls_amount'
 'tip_amount' 'total_amount' 'payment_type'] 
...