小编Kei*_*iku的帖子

几个月的熊猫时间

如何使用熊猫计算经过的月份?我写了以下内容,但这段代码并不优雅.你能告诉我一个更好的方法吗?

import pandas as pd

df = pd.DataFrame([pd.Timestamp('20161011'),
                   pd.Timestamp('20161101') ], columns=['date'])
df['today'] = pd.Timestamp('20161202')

df = df.assign(
    elapsed_months=(12 *
                    (df["today"].map(lambda x: x.year) -
                     df["date"].map(lambda x: x.year)) +
                    (df["today"].map(lambda x: x.month) -
                     df["date"].map(lambda x: x.month))))
# Out[34]: 
#         date      today  elapsed_months
# 0 2016-10-11 2016-12-02               2
# 1 2016-11-01 2016-12-02               1
Run Code Online (Sandbox Code Playgroud)

python pandas

16
推荐指数
4
解决办法
2万
查看次数

使用pandas为每个组创建组合的DataFrame

输入如下.

Out[178]: 
  group value
0     A     a
1     A     b
2     A     c
3     A     d
4     B     c
5     C     d
6     C     e
7     C     a
Run Code Online (Sandbox Code Playgroud)

对于此输入,我想为每个组创建一个组合并创建一个DataFrame.我该怎么做?

我想得到的输出:

Out[180]: 
  group  0  1
0     A  a  b
1     A  a  c
2     A  a  d
3     A  b  c
4     A  b  d
5     A  c  d
0     C  d  e
1     C  d  a
2     C  e  a
Run Code Online (Sandbox Code Playgroud)

python pandas

5
推荐指数
2
解决办法
820
查看次数

添加一个标志,指示 pandas 中每个组的列已更改

我有一个 DataFrame,其 id 的公司名称如下。

import pandas as pd

df = pd.DataFrame({
    "id": [1, 1, 1, 2, 2, 2, 3, 3, 3],
    "company": ["A", "A", "B", "C", "C", "C", "D", "E", "F"]},
    columns=["id", "company"]
)
   id company
0   1       A
1   1       A
2   1       B
3   2       C
4   2       C
5   2       C
6   3       D
7   3       E
8   3       F
Run Code Online (Sandbox Code Playgroud)

如何向上述 DataFrame 添加指示工作更改的标志,如下所示?

   id company  job_change
0   1       A           0
1   1       A           0
2   1       B …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

将 XGBoost 的 xgb.train 的输出保存为带有 python 日志记录的日志文件

我试图通过 将xgb.trainXGBoost的输出保存为日志文件logging,但我无法记录输出。我怎样才能记录它?我试图参考现有的 Stackoverflow 问题,但这是不可能的。我希望你用一个具体的样本来展示它。

import sys
import logging

# ---------------------------------------------- #
# Some logging settings
# ---------------------------------------------- #

import xgboost as xgb

import numpy as np
from sklearn.model_selection import KFold
from sklearn.datasets import load_digits

rng = np.random.RandomState(31337)

print("Zeros and Ones from the Digits dataset: binary classification")
digits = load_digits(2)
y = digits['target']
X = digits['data']
kf = KFold(n_splits=2, shuffle=True, random_state=rng)
for train_index, test_index in kf.split(X):

    param = {'max_depth':2, 'eta':0.3, 'silent':1, 'objective':'binary:logistic' }

    dtrain = xgb.DMatrix(X[train_index], y[train_index]) …
Run Code Online (Sandbox Code Playgroud)

python logging xgboost

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

标签 统计

python ×4

pandas ×3

logging ×1

xgboost ×1