我仍然很擅长使用python从头开始编程,所以作为练习我虽然拿了一个我使用SQL处理的文件尝试使用Python复制功能.看来我想把我的(压缩的,zip)csv文件创建一个它的Dict(或者也许是一个dicts的词典?).当我使用dict reader时,我将第一行作为键而不是每列作为自己的键?例如
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
Run Code Online (Sandbox Code Playgroud)
产量:
>>> 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 …
Run Code Online (Sandbox Code Playgroud) 我有一个包含多个日期的表(有些日期是NaN),我需要找到最早的日期,所以一行可能有DATE_MODIFIED,WITHDRAWN_DATE,SOLD_DATE,STATUS_DATE等.
因此,对于每一行,我想在一个或多个字段中找到最早的字段,并在数据框中创建一个新列.
像这样的东西,如果我只做一个,例如DATE MODIFIED我得到一个结果,但当我添加第二个如下
table['END_DATE']=min([table['DATE_MODIFIED']],[table['SOLD_DATE']])
Run Code Online (Sandbox Code Playgroud)
我明白了:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Run Code Online (Sandbox Code Playgroud)
为此,假设我最初创建正确的日期列,这构建工作以找到最小日期吗?
此代码绘制 Pandas Dataframe 中的特定列并提供倍数:
area_tabs=['12']
nrows = int(math.ceil(len(area_tabs) / 2.))
figlen=nrows*7 #adjust the figure size height to be sized to the number of rows
plt.rcParams['figure.figsize'] = 25,figlen
fig, axs = plt.subplots(nrows, 2, sharey=False)
for ax, area_tabs in zip(axs.flat, area_tabs):
actdf, aname = get_data(area_tabs)
lastq,fcast_yr,projections,yrahead,aname,actdf,merged2,mergederrs,montdist,ols_test,mergedfcst=do_projections(actdf)
mergedfcst.tail(12).plot(ax=ax, title='Area: {0} Forecast for 2014 {1} \
vs. 2013 actual of {2}'.format(unicode(aname),unicode(merged2['fcast'] [-1:].values),unicode(merged2['Units'][-2:-1].values)))
Run Code Online (Sandbox Code Playgroud)
数据框看起来大致如下:以日期作为索引
Units fcast
date
2014-01-01 384 302
2014-02-01 NaN 343
2014-03-01 NaN 396
2014-04-01 NaN 415
2014-05-01 NaN 483
2014-06-01 NaN 513 …
Run Code Online (Sandbox Code Playgroud) 我已经在此处发布了 IPython Notebook http://nbviewer.ipython.org/gist/dartdog/9008026 在我调用的单元格 5 中:编辑此代码应生成重复的图形。
import pandas as pd
import io
import statsmodels.api as sm
%matplotlib inline
import matplotlib.pyplot as plt
content2 = '''\
Units lastqu
2000-12-31 19391 NaN
2001-12-31 35068 5925
2002-12-31 39279 8063
2003-12-31 47517 9473
2004-12-31 51439 11226
2005-12-31 59674 11667
2006-12-31 58664 14016
2007-12-31 55698 13186
2008-12-31 42235 11343
2009-12-31 40478 7867
2010-12-31 38722 8114
2011-12-31 36965 8361
2012-12-31 39132 8608
2013-12-31 43160 9016
2014-12-31 NaN 9785
'''
df2 = pd.read_table(io.BytesIO(content2))
#make sure that …
Run Code Online (Sandbox Code Playgroud) 我在这里发布了一个IPython笔记本http://nbviewer.ipython.org/gist/dartdog/9008026
我通过标准Statsmodels OLS和PYMC3与Pandas提供的数据一起工作,顺便说一下,这部分工作得很好.
我看不出如何从PYMC3中获得更多标准参数?这些示例似乎只是使用OLS来绘制基本回归线.看来PYMC3模型数据应该能够给出回归线的参数吗?除了可能的痕迹,即什么是最高概率线?
对Alpha,beta和sigma的解释的任何进一步解释都欢迎!
另外,如何使用PYMC3模型来估计给定新x即具有某种概率的预测的y的未来值?
最后,PYMC3有一个新的GLM包装,我尝试了它似乎搞砸了?(虽然可能是我)
我即将去Pycon,当我在Webfaction主持时,其中一个教程(JKM)要求学生拥有AWS实例.我一直想弄清楚一些最低电量的例子可能是什么样的?我将有一个带Django的灯泡服务器和必要的存储空间,但旁边没有流量.
有人有一些指导/建议吗?我的谷歌搜索和查看这里并没有提供太多有用的信息.
我有以下代码:
table['CALC_DOM']=table.index
table['CALC_DOM']=table['END_DATE']-['CALC_DOM']
Run Code Online (Sandbox Code Playgroud)
不应该有更好的方法直接从table.index转换?喜欢:
table['CALC_DOM']=table.index
table['CALC_DOM']=table['END_DATE']-(table.index())
Run Code Online (Sandbox Code Playgroud)
我试过用
table.index.get_values
和
table.index.date
......但我得到的只是:
TypeError: incompatible type [object] for a datetime/timedelta operation
.
我有一个小文件读取例程,我只想要我有它的前200条记录,但是我一直无法弄清楚使用"while"构造有什么问题.此代码有效:
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')
rows = []
for row_index, row in enumerate(csv.DictReader(items_file, dialect='excel', delimiter='\t')):
if (row_index < 200):
rows.append(row)
else : break
Run Code Online (Sandbox Code Playgroud)
这段代码一直运行,直到它失败并出现内存不足的情况我认为它是等效的?
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')
rows = []
for row_index, row in enumerate(csv.DictReader(items_file, dialect='excel', delimiter='\t')):
while (row_index < 200):
rows.append(row)
else : break
Run Code Online (Sandbox Code Playgroud)
那么什么是正确的构造使用时? -
我想做的事情如下:
if table['STATUS']=='A'or 'P':
table['END_DATE']=end_date
Run Code Online (Sandbox Code Playgroud)
为了在STATUS中具有S或P的行替换END_DATE的值,这将产生
ValueError: The truth value of an array is ambiguous. Use a.empty, a.any() or a.all().
Run Code Online (Sandbox Code Playgroud)
我知道这是由于数组的广告...这似乎是一个小问题,但我似乎无法找到合适的答案在这里使用什么是正确的构造?我无法从文档中找到它...说使用.any()
当我访问IIS服务器上的页面以检索xml时,通过浏览器使用查询参数(使用下面示例中的http),我得到一个用户名和密码的弹出登录对话框(似乎是系统标准对话框/形成).一旦提交,数据就会到来.作为xml页面.
如何使用urllib处理此问题?当我执行以下操作时,我从未得到提示输入uid/psw ..我只是得到一个回溯,表明服务器(正确)id我是未经授权的.在Ipython笔记本中使用python 2.7
f = urllib.urlopen("http://www.nalmls.com/SERetsHuntsville/Search.aspx?SearchType=Property&Class=RES&StandardNames=0&Format=COMPACT&Query=(DATE_MODIFIED=2012-09-28T00:00:00%2B)&Limit=10")
s = f.read()
f.close()
Run Code Online (Sandbox Code Playgroud)
指向doc的指针也表示赞赏!没有找到这个确切的用例.
我计划将xml解析为csv,如果这有所不同的话.
我有一个非常简单的csv文件,我正在尝试使用不同的预测方法.
Year total UnemplRt
1 12/31/2013 NA 7.1
2 12/31/2012 39535 8.3
3 12/31/2011 36965 10.0
4 12/31/2010 36234 10.9
5 12/31/2009 37918 8.5
6 12/31/2008 42235 4.3
7 12/31/2007 55698 3.7
8 12/31/2006 58664 3.8
9 12/31/2005 59674 4.7
10 12/31/2004 51439 5.7
Run Code Online (Sandbox Code Playgroud)
当我使用R studio导入它时,我得到这个列表.(上面)只有列表名称.和Col标题,我似乎无法参考.
我是R的新手,但我知道我应该有一个Dataframe,第一列应该是日期类型.不知道如何从这里到达那里..然后..那是正确的输入预测布局吗?
如何使用预测(Mutli模型)使用行10-4在3上使用UnemplRt预测"总数"(预先知道等等,即10-3预测2和10-2预测1)当然这将是对即将到来的一年的预测...我已经在电子表格中使用直线回归计算了它,但是它太高了,所以我正在寻找最近的因素数据更好,注意曲线而不仅仅是直线.
这非常简单,但希望足够通用,其他人也会发现答案也很有用.
虽然这似乎是一个骗局,我无法解决,我有一个完整的当前14.04 Ubuntu和更新的PIP但我得到了,想知道它是否与tensorflow的新版本有关?:
tensorflow-0.9.0rc0-cp27-none-linux_x86_64.whl is not a supported wheel on this platform.
Run Code Online (Sandbox Code Playgroud)
回应:
sudo pip install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.9.0rc0-cp27-none-linux_x86_64.whl
Run Code Online (Sandbox Code Playgroud)
想知道是否有点子问题?还是车轮问题?如果python软件都安装好pip,我运行的数量相当广泛......所以TensorFlow似乎是独一无二的?
python ×10
pandas ×5
matplotlib ×2
statsmodels ×2
amazon-ec2 ×1
bayesian ×1
csv ×1
dataframe ×1
dictionary ×1
forecasting ×1
if-statement ×1
iis ×1
import ×1
login ×1
pip ×1
pymc3 ×1
r ×1
regression ×1
sql ×1
tensorflow ×1
time-series ×1
ubuntu-14.04 ×1
urllib ×1
while-loop ×1
xml ×1