小编Nát*_*ali的帖子

Groupby in python pandas:Fast Way

我想改善groupby蟒蛇熊猫的时间.我有这个代码:

df["Nbcontrats"] = df.groupby(['Client', 'Month'])['Contrat'].transform(len)
Run Code Online (Sandbox Code Playgroud)

目标是计算客户在一个月内签订的合同数量,并将此信息添加到新列(Nbcontrats)中.

  • Client:客户端代码
  • Month:数据提取月份
  • Contrat: 合同编号

我想改善时间.下面我只使用我的实际数据的一个子集:

%timeit df["Nbcontrats"] = df.groupby(['Client', 'Month'])['Contrat'].transform(len)
1 loops, best of 3: 391 ms per loop

df.shape
Out[309]: (7464, 61)
Run Code Online (Sandbox Code Playgroud)

如何改善执行时间?

python numpy pandas pandas-groupby

9
推荐指数
2
解决办法
7208
查看次数

保存pandas数据帧但保留NA值

我有这个代码

import pandas as pd
import numpy as np
import csv
df = pd.DataFrame({'animal': 'cat dog cat fish dog cat cat'.split(),
               'size': list('SSMMMLL'),
               'weight': [8, 10, 11, 1, 20, 12, 12],
               'adult' : [False] * 5 + [True] * 2}); 
Run Code Online (Sandbox Code Playgroud)

我用NA值改变了重量:

df['weight'] = np.nan
Run Code Online (Sandbox Code Playgroud)

最后我救了它

df.to_csv("ejemplo.csv", sep=";", decimal=",", quoting=csv.QUOTE_NONNUMERIC, index=False)
Run Code Online (Sandbox Code Playgroud)

但是,当我读到文件时,我有"",而不是NA,我想把NA而不是Nan

我想要输出:

adult;animal;size;weight
False;"dog";"S";NA
False;"cat";"M";NA    
Run Code Online (Sandbox Code Playgroud)

python csv nan pandas na

7
推荐指数
2
解决办法
6715
查看次数

R RecordLinkage身份

我正在使用R中的RecordLinkage Library.我有一个带有id,name,phone,mail的数据框

我的代码看起来像这样:

ids = data$id
pairs = compare.dedup(data, identity=ids, blockfld=as.list(2,3,4))
Run Code Online (Sandbox Code Playgroud)

问题是我的结果输出中的id不同,所以如果我有这些数据:

id   Name     Phone    Mail
233  Nathali  2222     nathali@dd.com
435  Nathali  2222 
553  Jean     3444     jean@dd.com
Run Code Online (Sandbox Code Playgroud)

在我的结果输出中,我会有类似的东西

id1 id2
1   2
Run Code Online (Sandbox Code Playgroud)

代替

id1 id2
233 435 
Run Code Online (Sandbox Code Playgroud)

我想知道是否有办法保留id而不是索引,或者有人可以解释我的身份参数.

谢谢

r record linkage

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

散景:选择x轴显示在图中(不是数字)

我有这样的情节::

from bokeh.io import output_file, show
from bokeh.charts import Line
from bokeh.models import FixedTicker
import pandas as pd

output_file('file.html')
data = {'Date shift end': {0: '01/01/16', 1: '01/02/16', 2: '01/03/16',
                           3: '01/04/16', 4: '01/05/16', 5: '01/06/16',
                           6: '01/07/16', 7: '01/08/16', 8: '01/09/16',
                           9: '01/10/16', 10: '01/11/16', 11: '01/12/16',
                           12: '01/13/16', 13: '01/14/16', 14: '01/15/16',
                           15: '01/16/16', 16: '01/17/16', 17: '01/18/16',
                           18: '01/19/16', 19: '01/20/16'},
        'Finance_Lbs': {0: 0.0, 1: 92218.080000000002, 2: 469434.14000000001,
                        3: 513948.95000000001, 4: 578014.71999999997,
                        5: 432396.69, 6: 573912.75,
                        7: …
Run Code Online (Sandbox Code Playgroud)

python ticker bokeh

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

导入GridSearchCV时,DeprecationWarning为0.18.1

我有一个scikit-learn安装版本0.18.1 ::

$ pip uninstall -y scipy scikit-learn $ pip install scipy scikit-learn

当我导入GridSearchCV时,我得到一个奇怪的DeprecationWarning ::

(venv2) :~/$ cat warn.pyy
from sklearn.grid_search import GridSearchCV
import sklearn as sk
print(sk.__version__)
Run Code Online (Sandbox Code Playgroud)

如果我运行它我得到::

(venv2) :~/$ python warn.py
/home/n/venv2/local/lib/python2.7/site-packages/sklearn/cross_validation.py:44: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed …
Run Code Online (Sandbox Code Playgroud)

python scikit-learn

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

标签 统计

python ×4

pandas ×2

bokeh ×1

csv ×1

linkage ×1

na ×1

nan ×1

numpy ×1

pandas-groupby ×1

r ×1

record ×1

scikit-learn ×1

ticker ×1