好的,所以我对此很陌生,我希望我能正确解释这一点。我正在使用 Ruby,并且我有一个程序,它采用 CSV 文件并在其上执行一些各种功能。我在这里关心的是时间部分。我取了一列数据,它是一个字符串,并使用此方法将其转换为 DateTime 并只给我小时部分:
def hour_reg(regdate)
regdate.to_s
time_stamp = DateTime.strptime("#{regdate}", "%m/%d/%y %H:%M").hour
time_stamp
end
那部分工作正常。所以现在我试图把我刚刚得到的那个小时转换成一个 HASH,它显示一天中的小时(1 到 24),以及每小时出现的次数。例如,如果 1 小时(对于凌晨 1 点)出现 3 次不同的时间,它将在散列中显示:{1 => 3}。这是迭代 TIMES 列的代码的样子,由 ":regdate" 指示
contents.each do |row|
id = row[0]
name = row[:first_name]
zipcode = clean_zipcode(row[:zipcode])
**reg_time = hour_reg(row[:regdate])**
end
基本上我想要每小时的频率。有人能帮忙吗?我有很多麻烦