所以我得到了谷歌趋势查询的输出。它在一张纸上包含多个表格。表单的第一部分看起来像:
Web Search interest: nespresso
United States; date_range:(today 90-d)
Interest over time
Day nespresso
8/7/2015 70
8/8/2015 82
8/9/2015 91
8/10/2015 84
所以我想做的是:忽略前几行,选择任何有日期的行。(自2015年8月7日至2015年8日的每周数据)。当然,read.csv中有nrow和skip,但我想知道是否有系统的方法可以做到这一点。
此外,请记住,来自谷歌趋势的数据包括日期之后的数据。
11/3/2015
11/4/2015
Top subregions for nes
Subregion nes
New York 100
Massachusetts 83
寻找Python或R解决方案
考虑这个Python解决方案来读取原始csv并将第一列转换为日期。Try/Except
用于跳过未正确转换为日期格式的行。
import csv
from datetime import datetime
with open('Unstructured.csv', 'rt') as csvfile:
csvReader = csv.reader(csvfile)
data = []
for row in csvReader:
try:
data.append([datetime.strptime(row[0], "%m/%d/%Y").strftime("%Y-%m-%d"), row[1]])
except ValueError:
continue
for i in data:
print(i)
输出(数据列表)
['2015-08-07', '70']
['2015-08-08', '82']
['2015-08-09', '91']
['2015-08-10', '84']
['2015-11-03', '']
['2015-11-05', '']