У меня есть файл csv, содержащий дату и время, номер1, номер2, номер3 номер4.
Я использую код для чтения, но как изменить типы.
мой код:
import csv
import datetime
myarray=([])
filename='Contract.csv'
f=csv.reader(open(filename,'rb'), delimiter=',')
for row in f:
myarray=array([row for row in f])
print myarray
Я получаю массив выглядит так: [['2010-05-01 15:20:12 0000' '345' '234' '163' '120'], ['2010-05-02 15:22:12 0000' '335' '214' '164' '120'],...]
Я не знаю, как изменить первый столбец на datetime, а другие - на float. Пожалуйста помоги. благодаря
Сначала прочитайте этот вопрос.
Было сказано, что. Я использую функцию, подобную этой (requries python-dateutil) для управления датами тоже:
from dateutil.parser import parse as date_parser
def _cast_value(self, value):
tests = (
int,
float,
lambda value: date_parser(value)
)
for test in tests:
try:
return test(value)
except ValueError:
continue
return value
dateutil
будет обрабатывать различные форматы даты для вас.
Вам нужно преобразовать значения:
i=int(s)
dt=datetime.datetime.strptime(s, '%Y-%m-%d ...')