在使用cross_validation.KFold(n,n_folds = folds)之后,我想访问索引以进行单折的训练和测试,而不是遍历所有折叠.
那么我们来看一下示例代码:
from sklearn import cross_validation
X = np.array([[1, 2], [3, 4], [1, 2], [3, 4]])
y = np.array([1, 2, 3, 4])
kf = cross_validation.KFold(4, n_folds=2)
>>> print(kf)
sklearn.cross_validation.KFold(n=4, n_folds=2, shuffle=False,
random_state=None)
>>> for train_index, test_index in kf:
Run Code Online (Sandbox Code Playgroud)
我想像这样访问kf中的第一个折叠(而不是for循环):
train_index, test_index in kf[0]
Run Code Online (Sandbox Code Playgroud)
这应该只返回第一个折叠,但我得到错误:"TypeError:'KFold'对象不支持索引"
我想要的输出:
>>> train_index, test_index in kf[0]
>>> print("TRAIN:", train_index, "TEST:", test_index)
TRAIN: [2 3] TEST: [0 1]
Run Code Online (Sandbox Code Playgroud)
链接:http://scikit-learn.org/stable/modules/generated/sklearn.cross_validation.KFold.html
如何检索列车和测试的索引只有一个折叠,而不通过整个for循环?
我希望从彼此中减去2个灰色人脸以查看差异,但我遇到了减去例如[4] - [6]而不是[-2](或差异:[2])的问题.
print(type(face)) #<type 'numpy.ndarray'>
print(face.shape) #(270, 270)
print(type(nface)) #<type 'numpy.ndarray'>
print(nface.shape) #(270, 270)
#This is what I want to do:
sface = face - self.nface #or
sface = np.subtract(face, self.nface)
Run Code Online (Sandbox Code Playgroud)
两者都不给出负数,而是从255减去0之后的其余部分.
sface的输出示例:
[[ 8 255 8 ..., 0 252 3]
[ 24 18 14 ..., 255 254 254]
[ 12 12 12 ..., 0 2 254]
...,
[245 245 251 ..., 160 163 176]
[249 249 252 ..., 157 163 172]
[253 251 247 ..., 155 …Run Code Online (Sandbox Code Playgroud) 我想将某些列中与正则表达式匹配的所有值除以某个值,并且仍然具有完整的数据帧.
可以在这里找到:如何通过regex从数据框中选择列,例如,所有以d开头的列都可以选择:
df.filter(regex=("d.*"))
Run Code Online (Sandbox Code Playgroud)
现在我选择了我需要的列,我希望例如将值除以2.可以使用以下代码:
df.filter(regex=("d.*")).divide(2)
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试像这样更新我的数据帧,它会给出一个can't assign to function call:
df.filter(regex=("d.*")) = df.filter(regex=("d.*")).divide(2)
Run Code Online (Sandbox Code Playgroud)
如何正确更新我现有的df?
是否有 Pathlib 等价物os.access()?
如果没有 Pathlib,代码将如下所示:
import os
os.access('my_folder', os.R_OK) # check if script has read access to folder
Run Code Online (Sandbox Code Playgroud)
但是,在我的代码中,我正在处理 Pathlib 路径,因此我需要这样做(这只是一个示例):
# Python 3.5+
from pathlib import Path
import os
# get path ~/home/github if on Linux
my_folder_pathlib = Path.home() / "github"
os.access(str(my_folder_pathlib), os.R_OK)
Run Code Online (Sandbox Code Playgroud)
演员str()阵容有点丑。我想知道我想要实现的目标是否有纯 Pathlib 解决方案?
ps 我知道“更容易请求宽恕”的原则,但是这是一个更大框架的一部分,我需要尽快知道脚本是否具有对 NAS 存储文件夹的正确权限。
我有自己的图标(KO.png:512x512(也有大小48,72,96,144和192))与我的main.py在同一个文件夹中.我想在ActionPrevious(2)和加载图标(3)中将其设置为启动器图标(1 ).
1)第一步是放入main.py:
def build(self):
self.icon = 'KO.png'
Run Code Online (Sandbox Code Playgroud)
在某些时候,这工作,但不能让它再次工作?
2)我还有一个带ActionPrevious的ActionBar.我想在这里设置自己的徽标.所以我在appname.kv中:
ActionPrevious:
app_icon: app.icon if app.icon else ''
Run Code Online (Sandbox Code Playgroud)
这适用于Linux,但不适用于Android.在Android中,我仍然拥有Kivy徽标.此外,如果我使用512x512图标,它在Linux上很模糊.如果我使用92x92,它看起来很好.
编辑: ActionPrevious确实有效,由于buildozer.spec中的路径不正确,应用程序无法正确构建(参见3)
3)我还希望加载器图标是我自己的徽标,所以我在buildozer.spec中有以下代码:
icon.filename = KO.png
presplash.filename = KO.png
Run Code Online (Sandbox Code Playgroud)
之前有'%(source.dir)s /',但这也不起作用:
icon.filename = %(source.dir)s/KO.png
presplash.filename = %(source.dir)s/KO.png
Run Code Online (Sandbox Code Playgroud)
编辑:但是这两个路径导致buildozer 没有构建 .apk,正确的路径是什么?
题
我们修改了CIFAR-10教程(卷积神经网络),以便在Adience数据库上运行面部上的性别分类.我们在这里读到," 参数共享 "非常有用,因为无论图像中的位置如何,一个补丁功能都是有用的.除了:
请注意,有时参数共享假设可能没有意义.当ConvNet的输入图像具有某些特定的中心结构时尤其如此,例如,我们应该期望在图像的一侧应该学习完全不同的特征而不是另一侧.一个实际示例是当输入是已经在图像中居中的面部时.
目标:因此我们想关闭CNN的参数共享.
我认为CIFAR-10教程使用参数共享?并且def inference(images)函数中的这部分代码似乎必须对它做一些事情:
biases = _variable_on_cpu('biases', [64], tf.constant_initializer(0.0))
bias = tf.nn.bias_add(conv, biases)
Run Code Online (Sandbox Code Playgroud)
哪个电话:
def _variable_on_cpu(name, shape, initializer):
with tf.device('/cpu:0'):
var = tf.get_variable(name, shape, initializer=initializer)
return var
Run Code Online (Sandbox Code Playgroud)
来自 Python 3.4的pathlib 库中的新 Path 包似乎是诸如 等方法的强大替代品os.path.join(),但我在使用它时遇到了一些麻烦。
我有一条路径可以是从folder_foo/file.csv到的任何内容long/path/to/folder_foo/file.csv。我folder_foo用 Pandas读取了 .csv 文件,修改了它并想将它保存到folder_bar/file.csv或long/path/to/folder_bar/file.csv。
基本上我想在 Path 对象中重命名folder_foo为folder_bar。
编辑:示例路径代码
csv_path = Path("long/path/to/folder_foo/file.csv")
Run Code Online (Sandbox Code Playgroud)
csv_path.parents[0] = csv_path.parents[0] + "_clean")
Run Code Online (Sandbox Code Playgroud)
这会导致错误TypeError: unsupported operand type(s) for +: 'PosixPath' and 'str',这意味着您不能+将 aPosixPath与 a结合使用str,如TypeError: unsupported operand type(s) for +: 'PosixPath' 和 'str' 中所述。
为了解决这个问题,我尝试了以下方法:
csv_path.parents[0] = Path(str(csv_path.parents[0]) + "_clean") …Run Code Online (Sandbox Code Playgroud) 通过使用 Python 和 Kivy,我想将文件写入用户手机的(虚拟)SD 卡,并在不同的函数中再次读取该文件。由于 Android、IOS 和 Windows Phone 可能具有不同的 SD 卡路径,因此使用“plyer”似乎是一个好主意。如何我读/写一个文件到的/ SD卡?
受到这个问题的启发:如何在 SQLAlchemy 中删除表?,我最终提出了一个问题:如何删除多个表。
假设我有 3 个表,如下所示,我想删除 2 个表(想象一下还有更多表,所以不需要手动删除表)。
import sqlalchemy as sqla
import sqlalchemy.ext.declarative as sqld
import sqlalchemy.orm as sqlo
sqla_base = sqld.declarative_base()
class name(sqla_base):
__tablename__ = 'name'
id = sqla.Column(sqla.Integer, primary_key=True)
name = sqla.Column(sqla.String)
class job(sqla_base):
__tablename__ = 'job'
id = sqla.Column(sqla.Integer, primary_key=True)
group = sqla.Column(sqla.String)
class company(sqla_base):
__tablename__ = 'company'
id = sqla.Column(sqla.Integer, primary_key=True)
company = sqla.Column(sqla.String)
engine = sqla.create_engine("sqlite:///test.db", echo=True)
sqla_base.metadata.bind = engine
# Tables I want to delete
to_delete = ['job', 'function']
# …Run Code Online (Sandbox Code Playgroud) 我正在尝试从http://kanjivg.tagaini.net/解析.svg文件,但我无法成功提取内部信息.
编辑1 :(完整档案)http://www.filedropper.com/0f9ab
部分0f9ab.svg看起来像这样:
<svg xmlns="http://www.w3.org/2000/svg" width="109" height="109" viewBox="0 0 109 109">
<g id="kvg:StrokePaths_0f9ab" style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;">
<g id="kvg:0f9ab" kvg:element="?">
<g id="kvg:0f9ab-g1" kvg:element="?" kvg:position="top" kvg:radical="general">
<path id="kvg:0f9ab-s1" kvg:type="?a" d="M53.26,9.38c0.99,0.99,1.12,2.09,1.12,3.12c0,0.67,0.06,8.38,0.06,13.01"/>
<path id="kvg:0f9ab-s2" kvg:type="?a"
</g>
</g>
</g>
Run Code Online (Sandbox Code Playgroud)
我的.py文件:
import lxml.etree as ET
svg = ET.parse('0f9ab.svg')
print(svg) # <lxml.etree._ElementTree object at 0x7f3a2f659ec8>
# AttributeError: 'lxml.etree._ElementTree' object has no attribute 'tag'
print(svg.tag)
# TypeError: 'lxml.etree._ElementTree' object is not subscriptable
print(svg[0])
# TypeError: 'lxml.etree._ElementTree' object is not iterable
for child in …Run Code Online (Sandbox Code Playgroud) python ×8
android ×2
kivy ×2
pathlib ×2
python-3.x ×2
grayscale ×1
icons ×1
ios ×1
lxml ×1
numpy ×1
pandas ×1
regex ×1
scikit-learn ×1
sd-card ×1
sqlalchemy ×1
subtraction ×1
svg ×1
tensorflow ×1