私はいくつかのPHPコードをPythonに翻訳しています。私はどちらも専門家ではない。これはたくさんあるかもしれませんが、ちょっとしたことは分かります。PHPをPythonに翻訳する:識別子ごとに最小時間と最大時間を見つける
私は特にこのコードの塊に苦しんでいます。ここでは、識別子識別子、つまり行[0]行[1]行[2]があります。行[4]はタイムスタンプです。それぞれの識別子について、あなたが思うように「開始」と「終了」の日付を見つけたいと思っています。これは、同僚がこれを行うコードを書いたものです。私は、何が起こっているのかを理解しながらコメントを追加しましたが、これをPythonにどのように翻訳するのかは分かりませんでした。
これまでPythonでは識別子のタイムスタンプの辞書を作成できましたが、問題のこの部分でうまく使用できませんでした。
質問: - このインスタンスでは、Pythonについて非常に明白で役に立つものがありますか? - どこでもPHPがPythonのルールにマッピングされていることがわかります(存在する場合)。コンテキストの場合
fgetcsv($inputhandle); //read input as csv
while ($row = fgetcsv($inputhandle)) { //read each line in record
$date_arr = date_parse_from_format("Y-m-d H:i:s",$row[4]); //parse timestamp
$newdate = mktime($date_arr['hour'],
$date_arr['minute'],
$date_arr['second'],
$date_arr['month'],
$date_arr['day'],
$date_arr['year']); //store each piece in array form
$endpoints[$row[0]][$row[1]][$row[2]]['end'] = $newdate; //identify endpoint
if(!isset($records[$row[0]][$row[1]][$row[2]])) {
$endpoints[$row[0]][$row[1]][$row[2]]['start'] = $newdate; //identify startpoint
}
$records[$row[0]][$row[1]][$row[2]][$newdate]=$row[5]; //row 5 holds values we care about
}
、ここで私が複製しようとしているプロセスです:
identify endpoints of time<br>
starttime<br>
endtime<br>
create 15 minute time vector while : startime < time < endtime<br>
ここに私はPythonでこれまで持っているものです。
import sys
import csv
from datetime
import time
import numpy
import itertools
//open file with csv reader
filename = open('ICUdata.csv', 'rb')
d = {} // declare dictionary variable
//read file as csv, parse
spam = csv.reader(filename, delimiter=',')
next(spam) #skip header
for row in spam: // first fill in missing values
if row[1] == '':
row[1] = '99999'
if row[2] == '':
row[2] = '99999'
//need datetime parse
datestring = row[4]
date = time.strptime(datestring, "%Y-%m-%d %H:%M:%S") // parsed datetime
//create dictionary of identifiers : realtime
k = id #need this instead of just row[0:3] which creates list
v = row[4]
if k not in d:
d[k] = [v]
#this = row[0:3].append(endpoint)
else:
d[k].append(v)
ありがとうございました!私が使用していたコードを追加する必要があることに気がついたが、これまでのことを今まで行ってきたことを知っているのは良い救済だ。 –