我使用的是python 3.4,Django 1.7.1(本书中考虑的版本),Postgres 9.3,我的IDE是Eclipse.
我一直在研究"轻量级Django - Elman和Lavin"这本书,我在第4章和第5章中已经被困了几天,我们应该使用其余的框架和backbone.js.例如,见
几天前,我试图通过本书中提供的myseld进行编码,并检查上面链接中提供的示例.但是,由于我没有继续,我决定复制上面链接中提供的代码并尝试运行.出现了同样的错误:
AssertionError at /
Relational field must provide a `queryset` argument, or set read_only=`True`.
Request Method: GET
Request URL: http://127.0.0.1:8000/
Django Version: 1.7.1
Exception Type: AssertionError
Exception Value:
Run Code Online (Sandbox Code Playgroud)
关系字段必须提供queryset参数,或设置read_only = True.
Exception Location: /usr/local/lib/python3.4/dist-packages/rest_framework/relations.py in __init__, line 35
Python Executable: /usr/bin/python3
Python Version: 3.4.0
Python Path:
['/home/daniel/workspace/Scrum',
'/usr/lib/python3.4',
'/usr/lib/python3.4/plat-i386-linux-gnu',
'/usr/lib/python3.4/lib-dynload',
'/usr/local/lib/python3.4/dist-packages',
'/usr/lib/python3/dist-packages']
Run Code Online (Sandbox Code Playgroud)
这个错误出现在"relations.py"中,它属于django-rest-framework.因为我使用的是上面链接中提供的确切代码,所以它应该没有错误.实际上,我改变了唯一的一段代码在settings.py中(重复发生错误后):
之前:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'scrum',
}
}
Run Code Online (Sandbox Code Playgroud)
现在:
DATABASES …Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用
myNews=urlopen(url).read()
myNews=nltk.clean_html(myNews)
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
文件"/usr/local/lib/python2.7/dist-packages/nltk-3.0.0-py2.7.egg/nltk/util.py",第346行,在clean_html中引发NotImplementedError("删除HTML标记,使用BeautifulSoup的get_text()函数")NotImplementedError:要删除HTML标记,请使用BeautifulSoup的get_text()函数
当我查看文件util.py时,我可以看到它没有实现:
def clean_html(html):
raise NotImplementedError ("To remove HTML markup, use BeautifulSoup's get_text() function")
Run Code Online (Sandbox Code Playgroud)
它应该不实施吗?
我在张量流中尝试不同的损失函数.
我想要的损失函数是一种epsilon不敏感函数(这是分量):
if(|yData-yModel|<epsilon):
loss=0
else
loss=|yData-yModel|
Run Code Online (Sandbox Code Playgroud)
我试过这个解决方案:
yData=tf.placeholder("float",[None,numberOutputs])
yModel=model(...
epsilon=0.2
epsilonTensor=epsilon*tf.ones_like(yData)
loss=tf.maximum(tf.abs(yData-yModel)-epsilonTensor,tf.zeros_like(yData))
optimizer = tf.train.GradientDescentOptimizer(0.25)
train = optimizer.minimize(loss)
Run Code Online (Sandbox Code Playgroud)
我也用过
optimizer = tf.train.MomentumOptimizer(0.001,0.9)
Run Code Online (Sandbox Code Playgroud)
我在实现中没有发现任何错误.然而,它没有收敛,而loss = tf.square(yData-yModel)收敛并且loss = tf.maximum(tf.square(yData-yModel)-epsilonTensor,tf.zeros_like(yData))也收敛.
所以,我也尝试了一些更简单的loss = tf.abs(yData-yModel),它也没有收敛.我是否犯了一些错误,或者在零或其他方面存在abs的不可微分性问题?abs函数会发生什么?
我想评估残差:( y-hat y).
我知道该怎么做:
df = pd.read_csv('myFile', delim_whitespace = True, header = None)
df.columns = ['column1', 'column2']
y, X = ps.dmatrices('column1 ~ column2',data = df, return_type = 'dataframe')
model = sm.OLS(y,X)
results = model.fit()
predictedValues = results.predict()
#print predictedValues
yData = df.as_matrix(columns = ['column1'])
res = yData - predictedValues
Run Code Online (Sandbox Code Playgroud)
我想知道是否有一种方法可以做到这一点(?).
我下面有这段代码。对于我来说,它对列而不是对行有效,这使我感到惊讶。
import pandas as pd
def summarizing_data_variables(df):
numberRows=size(df['ID'])
numberColumns=size(df.columns)
summaryVariables=np.empty([numberColumns,2], dtype = np.dtype('a50'))
cont=-1
for column in df.columns:
cont=cont+1
summaryVariables[cont][0]=column
summaryVariables[cont][1]=size(df[df[column].isin([0])][column])/(1.0*numberRows)
print summaryVariables
def summarizing_data_users(fileName):
print "Sumarizing users..."
numberRows=size(df['ID'])
numberColumns=size(df.columns)
summaryVariables=np.empty([numberRows,2], dtype = np.dtype('a50'))
cont=-1
for row in df['ID']:
cont=cont+1
summaryVariables[cont][0]=row
dft=df[df['ID']==row]
proportionZeros=(size(dft[dft.isin([0])])-1)/(1.0*(numberColumns-1)) # THe -1 is used to not count the ID column
summaryVariables[cont][1]=proportionZeros
print summaryVariables
if __name__ == '__main__':
df = pd.DataFrame([[1, 2, 3], [2, 5, 0.0],[3,4,5]])
df.columns=['ID','var1','var2']
print df
summarizing_data_variables(df)
summarizing_data_users(df)
Run Code Online (Sandbox Code Playgroud)
输出是这样的:
ID var1 var2
0 1 …Run Code Online (Sandbox Code Playgroud) 虽然我是其他语言的一种实验程序员,但我是Python的新手.我一直试图做一个非常简单的事情,就是在开始后退出主循环.这似乎是一个大问题.以下程序仅生成一系列事件.一切似乎都在起作用,但我无法关闭最终的窗口......我该怎么办?
from Tkinter import *
root=Tk()
theMainFrame=Frame(root)
theMainFrame.pack()
class CloseAfterFinishFrame1(Frame): # Diz que herda os parametros de Frame
def __init__(self):
Frame.__init__(self,theMainFrame) # Inicializa com os parametros acima!!
Label(self,text="Hi",font=("Arial", 16)).pack()
button = Button (self, text = "I am ready", command=self.CloseWindow,font=("Arial", 12))
button.pack()
self.pack()
def CloseWindow(self):
self.forget()
CloseAfterFinishFrame2()
class CloseAfterFinishFrame2(Frame): # Diz que herda os parametros de Frame
def __init__(self):
Frame.__init__(self,theMainFrame) # Inicializa com os parametros acima!!
Label(self,text="Hey",font=("Arial", 16)).pack()
button = Button (self, text = "the End", command=self.CloseWindow,font=("Arial", 12))
button.pack()
self.pack()
def …Run Code Online (Sandbox Code Playgroud) 我有一个像这样的数据框:
Run Code Online (Sandbox Code Playgroud)year fcode y x 0 1987 410032 NaN 0 1 1988 410032 NaN 0 2 1989 410032 NaN 0 3 1987 410440 NaN 0 4 1988 410440 NaN 0 5 1989 410440 NaN 0 6 1987 410495 NaN 0 7 1988 410495 NaN 0 8 1989 410495 NaN 0 9 1987 410500 NaN 0 10 1988 410500 NaN 0 11 1989 410500 NaN 0 12 1987 410501 NaN 0 13 1988 410501 NaN 0 14 1989 410501 NaN 0 …
有没有一种方法可以用简单的asi“-”代替所有类型的连字符?我正在寻找适合太空的类似东西:
txt = re.sub(r'[\s]+',' ',txt)
Run Code Online (Sandbox Code Playgroud)
我相信某些非ASCII“-”连字符会避免删除某些特定停用词(由连字符连接的项目名称)的正确过程:
我想用AR-L1003代替此AR–L1003',但是我想对全文进行此操作。
我可以做这个:
model=linear_model.LogisticRegression(solver='lbfgs',max_iter=10000)
kfold = model_selection.KFold(n_splits=number_splits,shuffle=True, random_state=random_state)
scalar = StandardScaler()
pipeline = Pipeline([('transformer', scalar), ('estimator', model)])
results = model_selection.cross_validate(pipeline, X, y, cv=kfold, scoring=score_list,return_train_score=True)
Run Code Online (Sandbox Code Playgroud)
其中 Score_list 可以是类似['accuracy','balanced_accuracy','precision','recall','f1'].
我也可以这样做:
kfold = model_selection.KFold(n_splits=number_splits,shuffle=True, random_state=random_state)
scalar = StandardScaler()
pipeline = Pipeline([('transformer', scalar), ('estimator', model)])
for i, (train, test) in enumerate(kfold.split(X, y)):
pipeline.fit(self.X[train], self.y[train])
pipeline.score(self.X[test], self.y[test])
Run Code Online (Sandbox Code Playgroud)
但是,我无法更改最后一行中管道的分数类型。我怎样才能做到这一点?
我曾经像这样使用这个模块:
import community
if __name__ == '__main__':
G = nx.karate_club_graph()
pos = nx.spring_layout(G)
partition = community.best_partition(G)
Run Code Online (Sandbox Code Playgroud)
我安装了正确的模块:
sudo pip3 install python-louvain
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
AttributeError: module 'community' has no attribute 'best_partition'
Run Code Online (Sandbox Code Playgroud)
据我所知,它遵循此处提供的文档。
python ×5
pandas ×3
python-3.x ×3
python-2.7 ×2
backbone.js ×1
dataframe ×1
django ×1
hyphen ×1
networkx ×1
nltk ×1
patsy ×1
pipeline ×1
postgresql ×1
regex ×1
regression ×1
scikit-learn ×1
statsmodels ×1
tensorflow ×1
tkinter ×1