小编Bry*_*ant的帖子

带有vs vs MultiIndex的Pandas Dataframe日期时间切片

使用单索引数据帧,我可以执行以下操作:

df2 = DataFrame(data={'data': [1,2,3]}, 
                index=Index([dt(2016,1,1),
                      dt(2016,1,2),
                      dt(2016,2,1)]))

>>> df2['2016-01 : '2016-01']
                data
    2016-01-01     1
    2016-01-02     2

>>> df2['2016-01-01' : '2016-01-01']
                data
    2016-01-01     1
Run Code Online (Sandbox Code Playgroud)

日期时间切片在您提供一整天(即2016-01-01)时有效,并且在您给部分日期(例如年份和月份(2016-01))时也适用。所有这些都很好,但是当您引入多索引时,它仅适用于完整日期。部分日期切片似乎不再起作用

df = DataFrame(data={'data': [1, 2, 3]},
               index=MultiIndex.from_tuples([(dt(2016, 1, 1), 2),
                                             (dt(2016, 1, 1), 3),
                                             (dt(2016, 1, 2), 2)],
                                             names=['date', 'val']))


 >>> df['2016-01-01 : '2016-01-02']
                            data
     date       val     
     2016-01-01 2           1
                3           2
     2016-01-02 2           3
Run Code Online (Sandbox Code Playgroud)

好的,那很好,但是部分日期:

>>> df['2016-01' : '2016-01']
 File "pandas/index.pyx", line 134, in pandas.index.IndexEngine.get_loc      (pandas/index.c:3824)
 File "pandas/index.pyx", line 154, in pandas.index.IndexEngine.get_loc (pandas/index.c:3704)
 File …
Run Code Online (Sandbox Code Playgroud)

python datetime slice dataframe pandas

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

python 脚本的源输出因管道异常而失败

我试图让 python 脚本的输出可获取。即我希望能够运行:

$ source <(python example.py)
Run Code Online (Sandbox Code Playgroud)

它总是因同样的问题而失败:

Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>
BrokenPipeError: [Errno 32] Broken pipe
Run Code Online (Sandbox Code Playgroud)

这是示例.py:

print("export ENV_VAR=abc")
Run Code Online (Sandbox Code Playgroud)

有没有办法解决?我试图尝试捕获异常(BrokenPipeError),但它似乎不起作用。该异常似乎阻止了采购工作,因为

$ echo $ENV_VAR
Run Code Online (Sandbox Code Playgroud)

给我什么也没有

python macos bash python-3.x

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

无法删除 Postgres ENUM

我在 postgres 中有一个枚举。它是通过 sql alchemy 定义的,如下所示:

sa.Column('state', postgresql.ENUM(u'ACTIVE', u'STOPPED', u'FAILED', name='ProcessState'), nullable=True),
Run Code Online (Sandbox Code Playgroud)

我无法删除它,但它似乎也不存在:

database=# select NULL :: ProcessState;
ERROR:  type "processstate" does not exist
LINE 1: select NULL :: ProcessState
                       ^
database=# SELECT n.nspname AS "schema", t.typname
     , string_agg(e.enumlabel, '|' ORDER BY e.enumsortorder) AS enum_labels
FROM   pg_catalog.pg_type t 
JOIN   pg_catalog.pg_namespace n ON n.oid = t.typnamespace 
JOIN   pg_catalog.pg_enum e ON t.oid = e.enumtypid  
GROUP  BY 1,2;
 schema |  typname  |      enum_labels      
--------+-----------+-----------------------
 public | ProcessState | ACTIVE|STOPPED|FAILED
(1 row)


database=# drop …
Run Code Online (Sandbox Code Playgroud)

python postgresql sqlalchemy

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

是否可以在Pandas的groupby操作中应用`first()`和`last()`来分隔列?

我有一个数据帧:

df = pd.DataFrame({'id': [1, 1, 2, 2], 'data': [1, 2, 3, 4], 'value': [10, 9, 8, 7]})

In [4]: df
Out[4]: 
   id  data  value
0   1     1     10
1   1     2      9
2   2     3      8
3   2     4      7

In [5]: df.groupby(['id']).last()
Out[5]: 
    data  value
id             
1      2      9
2      4      7

In [6]: df.groupby(['id']).first()
Out[6]: 
    data  value
id             
1      1     10
2      3      8
Run Code Online (Sandbox Code Playgroud)

是否有可能产生从一个数据帧groupby即是由first()应用valuelast()应用data?如果它可以更容易,你可以假设last()适用于一切,但 …

python pandas pandas-groupby

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

构建python包时找不到MacOS构建问题lstdc++

在尝试在 MacOS 上安装 python 依赖项时,我遇到了构建错误。

    clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9 [-Wdeprecated]
    ld: library not found for -lstdc++
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    error: command 'g++' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)

我安装了 xcode 和 xcode 命令行工具,我使用自制软件,所以我通过自制软件安装了 gcc 9.1。

我在构建中看到的另一件事是:

  ERROR: running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.7-x86_64-3.7
Run Code Online (Sandbox Code Playgroud)

我担心的是我不确定 macosx-10.7 指的是什么?我正在运行 mojave (10.14) 并且 xcode 是版本 10.2.1,那么 10.7 …

python macos homebrew clang

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