我还是很新的使用python来从头开始编程,所以作为一个练习,虽然我会拿一个文件来处理使用SQL,尝试使用Python来复制功能。看来我想把我的(压缩的,zip)csv文件并创建一个Dict(或者可能是一个字典词典?)。当我使用dict阅读器时,我将第一行作为关键字,而不是每一列作为自己的关键字?例如。带有所有列名的CSV到Python字典?
import csv, sys, zipfile
sys.argv[0] = "/home/tom/Documents/REdata/AllListing1RES.zip"
zip_file = zipfile.ZipFile(sys.argv[0])
items_file = zip_file.open('AllListing1RES.txt', 'rU')
for row in csv.DictReader(items_file,dialect='excel'):
pass
产量:
>>> for key in row:
print 'key=%s, value=%s' % (key, row[key])
key=MLS_ACCT PARCEL_ID AREA COUNTY STREET_NUM STREET_NAME CITY ZIP STATUS PROP_TYPE LIST_PRICE LIST_DATE DOM DATE_MODIFIED BATHS_HALF BATHS_FULL BEDROOMS ACREAGE YEAR_BUILT YEAR_BUILT_DESC OWNER_NAME SOLD_DATE WITHDRAWN_DATE STATUS_DATE SUBDIVISION PENDING_DATE SOLD_PRICE,
value=492859 28-15-3-009-001.0000 200 JEFF 3828 ORLEANS RD MOUNTAIN BROOK 35243 A SFR 324900 3/3/2011 2 3/4/2011 12:04:11 AM 0 2 3 0 1968 EXIST SPARKS 3/3/2011 11:54:56 PM KNOLLWOOD
所以,我正在寻找的是为MLS_ACCT
列和一个单独的一个PARCEL_ID
等这样我就可以再由包含KNOLLWOOD
所有项目做这样的事情的平均价格在SUBDIVISION
字段有日期范围的另一个小节,销售日期等。
我很清楚如何用SQL来完成它,但正如我所说的,我正在争取在这里获得一些Python技能。 过去几天我一直在阅读,但在这类用例中还没有找到任何非常简单的插图。指向所述文档将不胜感激。我意识到我可以使用内存驻留的SQL-lite,但我的愿望是再次学习Python方法。我在Numpy和Scipy上阅读了一些内容,并且加载了圣人,但仍然无法找到一些有用的插图,因为这些工具似乎集中在只有数字作为元素的数组,我有很多字符串匹配,我需要做以及日期范围计算和比较。
最后我需要替换表中的值(因为我有脏数据),我现在通过一个“翻译表”来做到这一点,该翻译表包含所有脏变量并为最终使用提供“干净”的答案。
我们需要更多有关您正在构建的词典结构的更多信息以给出更确切的答案...让我们假设您将所有这些数据填入名为'mls'的词典中...您想如何订购关键字段?城市,细分,地址等等?此外,我怀疑,在你与循环词典键循环一段时间后,'sqllite'内存将更具吸引力... – 2011-04-17 18:30:26
Dan提供了基本答案这些标签让我大吃一惊,你提到的更广泛的问题是现在是我的问题,正如我最初所说的,我拥有所有在SQL中工作的S **,但是我将它用作Python的学习案例。总之,我需要大部分基本组和总和/平均值(以及使用表上的替代数据创建视图,以提供清理“脏”数据等等,以便脱离SQL但尝试理解在Python中使用最好的结构和方法来获得类似的结果,数据集大约有500,000行 – dartdog 2011-04-17 19:03:11