小编Wbo*_*boy的帖子

大熊猫的分层抽样

我已经查看了Sklearn分层抽样文档以及大熊猫文档以及来自Pandas的分层样本基于列的sklearn分层抽样,但他们没有解决这个问题.

我正在寻找一种快速的pandas/sklearn/numpy方法,从数据集中生成大小为n的分层样本.但是,对于小于指定采样数的行,它应该采用所有条目.

具体例子:

在此输入图像描述

谢谢!:)

python numpy pandas scikit-learn

25
推荐指数
3
解决办法
2万
查看次数

Keras IndexError:索引超出范围

我是Keras的新手,我试图在数据集上做二进制MLP,并且不知道为什么会让索引超出界限.

from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Activation
from keras.optimizers import SGD

model = Sequential()
model.add(Dense(64, input_dim=20, init='uniform', activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(64, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(1, activation='sigmoid'))

model.compile(loss='binary_crossentropy',
          optimizer='rmsprop')
model.fit(trainx, trainy, nb_epoch=20, batch_size=16) # THROWS INDICES ERROR
Run Code Online (Sandbox Code Playgroud)

错误:

model.fit(trainx, trainy, nb_epoch=20, batch_size=16)

Epoch 1/20
Traceback (most recent call last):

  File "<ipython-input-6-c81bd7606eb0>", line 1, in <module>
model.fit(trainx, trainy, nb_epoch=20, batch_size=16)

  File "C:\Users\Thiru\Anaconda3\lib\site-packages\keras\models.py", line 646, in fit
shuffle=shuffle, metrics=metrics)

  File "C:\Users\Thiru\Anaconda3\lib\site-packages\keras\models.py", line 271, in _fit
ins_batch = slice_X(ins, batch_ids)

  File "C:\Users\Thiru\Anaconda3\lib\site-packages\keras\models.py", …
Run Code Online (Sandbox Code Playgroud)

neural-network theano keras

11
推荐指数
3
解决办法
8162
查看次数

编辑tensorflow inceptionV3 retraining-example.py进行多次分类

TLDR:无法弄清楚如何使用重新训练的inceptionV3进行多个图像预测.

你好亲切的人:)我花了几天时间搜索了很多stackoverflow帖子和文档,但我找不到这个问题的答案.非常感谢任何帮助!

我在新图片上重新训练了tensorflow inceptionV3模型,它可以按照https://www.tensorflow.org/versions/r0.9/how_tos/image_retraining/index.html上的说明使用新图像并使用以下命令:

bazel build tensorflow/examples/label_image:label_image && \
bazel-bin/tensorflow/examples/label_image/label_image \
--graph=/tmp/output_graph.pb --labels=/tmp/output_labels.txt \
--output_layer=final_result \
--image= IMAGE_DIRECTORY_TO_CLASSIFY
Run Code Online (Sandbox Code Playgroud)

但是,我需要对多个图像进行分类(如数据集),并严重依赖于如何操作.我在下面找到了以下示例

https://github.com/eldor4do/Tensorflow-Examples/blob/master/retraining-example.py

关于如何使用再训练模型,但同样,关于如何为多个分类修改它的细节非常稀少.

从我从MNIST教程中收集到的内容,我需要在sess.run()对象中输入feed_dict,但是因为我无法理解如何在此上下文中实现它而被困在那里.

任何帮助将非常感谢!:)

编辑:

运行Styrke的脚本并进行了一些修改,我得到了这个

    waffle@waffleServer:~/git$ python tensorflowMassPred.py  I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcublas.so locally I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcudnn.so locally I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcufft.so locally I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcuda.so locally I
       tensorflow/stream_executor/dso_loader.cc:108] successfully opened
       CUDA library libcurand.so locally
       /home/waffle/anaconda3/lib/python3.5/site-packages/tensorflow/python/ops/array_ops.py:1197:
       VisibleDeprecationWarning: converting an array with ndim > 0 to …
Run Code Online (Sandbox Code Playgroud)

python machine-learning python-3.x tensorflow

11
推荐指数
2
解决办法
3343
查看次数

pd.get_dummies() 在大范围内缓慢

我不确定这是否已经是最快的方法,或者我这样做效率低下。

我想对具有 27k+ 可能级别的特定分类列进行热编码。该列在 2 个不同的数据集中具有不同的值,因此我在使用 get_dummies() 之前首先组合了级别

def hot_encode_column_in_both_datasets(column_name,df,df2,sparse=True):
    col1b = set(df2[column_name].unique())
    col1a = set(df[column_name].unique())
    combined_cats = list(col1a.union(col1b))
    df[column_name] = df[column_name].astype('category', categories=combined_cats)
    df2[column_name] = df2[column_name].astype('category', categories=combined_cats)

    df = pd.get_dummies(df, columns=[column_name],sparse=sparse)
    df2 = pd.get_dummies(df2, columns=[column_name],sparse=sparse)
    try:
        del df[column_name]
        del df2[column_name]
    except:
        pass
    return df,df2
Run Code Online (Sandbox Code Playgroud)

然而,它已经运行了2个多小时,它仍然卡在热编码中。

我可能在这里做错了什么吗?或者这只是在大型数据集上运行它的性质?

Df 有 6.8m 行和 27 列,Df2 在热编码我想要的列之前有 19990 行和 27 列。

感谢您的建议,谢谢!:)

python pandas categorical-data

5
推荐指数
1
解决办法
3890
查看次数

ValueError:未知标签类型:数组([0.11],...)在制作额外树模型时

我试图在这个数据集上使用额外的树分类器,并且出于某种原因

model.fit(trainx,trainy)
Run Code Online (Sandbox Code Playgroud)

部分,它抛出了我

ValueError: Unknown label type: array([[ 0.11],
       [ 0.12],
       [ 0.64],
       [ 0.83],
       [ 0.33],
       [ 0.72],
       [ 0.49],
Run Code Online (Sandbox Code Playgroud)

错误.数组([0.11]是我的训练数据.我搜索了堆栈溢出,显然它是由于sklearn没有识别数据类型,但我已尝试过所有内容

trainy = np.asarray(trainy,dtype=float)
trainy=trainy.astype(float)
Run Code Online (Sandbox Code Playgroud)

即使类型(trainy)显示其numpy.ndarray,它也无法正常工作.任何人都能指出我在正确的方向吗?

这是代码:

import pandas as pd
import numpy as np
from sklearn.preprocessing import LabelEncoder
from sklearn import metrics
from sklearn.ensemble import ExtraTreesClassifier
from sklearn import cross_validation


def preProcess():
    df= pd.read_csv('C:/Users/X/Desktop/Managerial_and_Decision_Economics_2013_Video_Games_Dataset.csv',encoding ='ISO-8859-1')
    #drop non EA
    df = df[df['EA'] ==1]
    #change categorical variables
    le = LabelEncoder()
    nonnumeric_columns=['Console','Title','Publisher','Genre']
    for feature in nonnumeric_columns:
        df[feature] = le.fit_transform(df[feature])
    #set dataset …
Run Code Online (Sandbox Code Playgroud)

python scikit-learn

4
推荐指数
1
解决办法
4288
查看次数

将多个散景HTML图嵌入到烧瓶中

我在散景网站上搜索了过去3个小时,堆栈溢出但是没有一个是我真正想要的.

我已经生成了我的情节,并将它们放在html文件中.我想要做的就是将图表嵌入我的仪表板中,如下图中白色区域中的多网格形状.但是,只添加2个图表会使它们重叠并且非常奇怪.

在此输入图像描述

我使用{{include}}方法以这种方式包含图形:

在此输入图像描述

任何人都可以给我指点如何很好地对齐它们?理想情况下,我希望在该空间中有6个小块地块.我不想每次加载仪表板时重新生成图表,所以我不想要嵌入方式.

请帮忙:(非常感谢你!

编辑:遵循大的建议,使用responsive = True工作,但我无法控制CSS样式和图表的大小.我怀疑它与使用include标签有关.有人可以帮忙吗?:)

在此输入图像描述

html css flask python-3.x bokeh

4
推荐指数
1
解决办法
4020
查看次数

pandas 选择具有给定时间戳间隔的行

我有一个以下形式的大型数据框

timestamp | col1 | col2 ...
Run Code Online (Sandbox Code Playgroud)

我想选择间隔至少 x 分钟的行,其中 x 可以是 5,10,30 等。问题是时间戳不是等距的,所以我不能做一个简单的“获取每 n 行”技巧。

例子:

timestamp | col1 | col2

'2019-01-15 17:52:29.955000', x, b
'2019-01-15 17:58:29.531000', x, b
'2019-01-16 03:21:48.255000', x, b
'2019-01-16 03:27:46.324000', x, b
'2019-01-16 03:33:09.984000', x, b
'2019-01-16 07:22:08.170000', x, b
'2019-01-16 07:28:27.406000', x, b
'2019-01-16 07:34:35.194000', x, b
Run Code Online (Sandbox Code Playgroud)

如果间隔 = 10:

结果:

'2019-01-15 17:52:29.955000', x, b
'2019-01-16 03:21:48.255000', x, b
'2019-01-16 03:33:09.984000', x, b
'2019-01-16 07:22:08.170000', x, b
'2019-01-16 07:34:35.194000', x, b
Run Code Online (Sandbox Code Playgroud)

如果间隔 = …

python pandas

4
推荐指数
1
解决办法
1003
查看次数

从盒子中取出物品的方法数

我遇到了以下算法问题,该问题对运行时间有严格的限制(<10s并且没有大的内存占用),我被难住了。我的方法一半的测试用例都失败了。

问题

一个盒子包含许多物品,一次只能取出 1 个或 3 个。

盒子可以有多少种方式被清空?答案可能非常大,因此将其返回为 10^9+7 的模。

例如,最初有n=7个项目。可以通过九种方式删除它们,如下所示:

1.(1,1,1,1,1,1,1)
2.(1.1.1.1.3)
3.(1,1,1,3,1)
4.(1,1,3,1,1)
5.(1,3,1,1,1)
6.(3,1,1,1,1)
7.(1,3,3)
8.(3,1,3)
9.(3,3,1)
Run Code Online (Sandbox Code Playgroud)

所以该函数应该返回 9。

函数描述:您的函数必须接受一个参数,n表示项目的数量,并返回一个整数,表示清空盒子的方式数。

限制条件:1<=n<=10^8

案例示例:

Input: 1
Sample OutPut: 1
Explanation: There is only 1 way to remove 1 item. Answer=(1%1000000007)=1

Input: 7
Sample OutPut: 9
There is only 9 ways to remove 7 items
Run Code Online (Sandbox Code Playgroud)

我的方法

这导致了一个标准的递归关系,其中f(n) = f(n-3) + f(n-1)n > 2,所以我这样做如下

def memoized_number_of_ways(dic, n):
    if n not in dic:
        dic[n] = memoized_number_of_ways(dic, n-3) …
Run Code Online (Sandbox Code Playgroud)

algorithm dynamic-programming combinatorics

4
推荐指数
1
解决办法
211
查看次数

UTC 到给定国家/地区首字母缩写的本地时间

假设我有一列国家/地区首字母缩写,将 UTC 时间列转换为本地时间的最佳方法是什么?

例如

   UTC          Country  
----------   |  --------  
1480597215        FR
1480544735        RU
Run Code Online (Sandbox Code Playgroud)

   UTC          Country     Localized time (example)
----------   |  --------    ---------------
1480597215        FR       datetime.datetime(2016, 12, 2, 0, 0, 15, tzinfo  = FR)
1480544735        RU
Run Code Online (Sandbox Code Playgroud)

我知道存在时区问题(例如,美国的不同地区位于不同的时区),但假设有一个近似映射(例如,美国所有地区都遵循中部时间)

最好的方法是什么?pytz 库需要实际的时区(例如“亚洲/马来西亚”),但我只有国家/地区代码。

谢谢你!:)

python timezone datetime pandas

3
推荐指数
1
解决办法
1250
查看次数

R中的逻辑回归图给出的是直线而不是S形曲线

我正在绘制逻辑回归的结果,但是我得到的直线不是预期的S曲线:

在此处输入图片说明

这是我正在使用的代码:

我从原始x轴创建了一系列数据,将其转换为数据框,然后进行了预测并绘制了线条。

 model = glm(SHOT_RESULT~SHOT_DISTANCE,family='binomial',data = df_2shot)
 summary(model)
 #Eqn : P(SHOT_RESULT = True) = 1 / (1 + e^-(0.306 - 0.0586(SHOT_DISTANCE)))

 r = range(df_2shot$SHOT_DISTANCE) # draws a curve based on prediction
 x_range = seq(r[1],r[2],1)
 x_range = as.integer(x_range)
 y = predict(model,data.frame(SHOT_DISTANCE = x_range),type="response")
 plot(df_2shot$SHOT_DISTANCE, df_2shot$SHOT_RESULT, pch = 16,
      xlab = "SHOT DISTANCE", ylab = "SHOT RESULT")
 lines(x_range,y)
Run Code Online (Sandbox Code Playgroud)

旁注:我正在关注本教程:http : //www.theanalysisfactor.com/r-glm-plotting/

任何见解将不胜感激!谢谢!:)

plot regression r logistic-regression

2
推荐指数
1
解决办法
2047
查看次数

从拼音中获取声调数

假设我有一个拼音:

\n\n
g\xc4\x93ge\n
Run Code Online (Sandbox Code Playgroud)\n\n

我怎样才能得到重音字符的“音号”?\neg,在这种情况下,\xc4\x93 将是第一个音,理想的输出将是 ge1ge。但实际上,第一步是如何将音调转换为数字?

\n\n

输入/输出示例:

\n\n
g\xc4\x93ge\nn\xc7\x8einai\nw\xc3\xa0ip\xc3\xb3\n
Run Code Online (Sandbox Code Playgroud)\n\n

成为

\n\n
ge1ge\nna3inai\nwa4ipo2\n
Run Code Online (Sandbox Code Playgroud)\n\n

我想在 python 中理想地做到这一点,但我很灵活。

\n\n

谢谢!:)

\n

python ascii

2
推荐指数
1
解决办法
420
查看次数

基于另一个 pandas 聚合一列

从技术上讲,这应该是一件简单的事情,但不幸的是,目前我并没有想到这一点。

我试图根据另一列找到另一列的比例。例如:

Column 1   |  target_variable
'potato'         1
'potato'         0
'tomato'         1
'brocolli'       1
'tomato'         0
Run Code Online (Sandbox Code Playgroud)

预期输出是:

column 1   | target = 1  | target = 0 | total_count
'potato'   |     1       |      1     |     2
'tomato'   |     1       |      1     |     2
'brocolli' |     1       |      0     |     1
Run Code Online (Sandbox Code Playgroud)

但是,我认为我错误地使用了聚合,因此我采用了以下简单的实现:

z = {}
for i in train.index:
    fruit = train["fruit"][i]
    l = train["target"][i]
    if fruit not in z:
        if l == 1:
            z[fruit] = {1:1,0:0,'count':1}
        else:
            z[fruit] = {1:0,0:1,'count':1} …
Run Code Online (Sandbox Code Playgroud)

python pandas

2
推荐指数
1
解决办法
1076
查看次数

Ruby使用RVM挂起负载

使用RVM安装ruby 2.4.0,但在输入ruby后,命令只是无限期冻结.可以ctrl-C'ed出来,但红宝石永远不会加载.

在此输入图像描述

Ruby信息:

ruby-2.4.0:

  system:
    uname:        "Linux waffleboy 4.8.0-58-generic #63~16.04.1-Ubuntu SMP Mon Jun 26 18:08:51 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux"
    name:         "Ubuntu"
    version:      "16.04"
    architecture: "x86_64"
    bash:         "/bin/bash => GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)"
    zsh:          "/usr/bin/zsh => zsh 5.1.1 (x86_64-ubuntu-linux-gnu)"
    remote path:  "ubuntu/16.04/x86_64"

  rvm:
    version:      "rvm 1.29.2 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io/]"
    updated:      "23 minutes 20 seconds ago"
    path:         "/home/waffleboy/.rvm"
    autolibs:     "[4] Allow RVM to use package manager if found, install missing dependencies, install …
Run Code Online (Sandbox Code Playgroud)

ruby rvm

0
推荐指数
1
解决办法
69
查看次数