相关疑难解决方法(0)

根据pandas中列的值从DataFrame中选择行

如何根据pandas中某些列中的值从DataFrame中选择行?
在SQL中我会使用:

SELECT *
FROM table
WHERE colume_name = some_value
Run Code Online (Sandbox Code Playgroud)

我试着看看熊猫文档,但没有立即找到答案.

python dataframe pandas

1649
推荐指数
15
解决办法
230万
查看次数

我如何获得Python程序的执行时间?

我在Python中有一个命令行程序需要一段时间才能完成.我想知道完成跑步所需的确切时间.

我看过这个timeit模块,但它似乎只适用于小代码片段.我想要整个计划的时间.

python time

831
推荐指数
30
解决办法
94万
查看次数

"是无"和"==无"之间的区别是什么?

我最近遇到了这种语法,我不知道它的区别.

如果有人能告诉我差异,我将不胜感激.

python jython

289
推荐指数
5
解决办法
14万
查看次数

如何基于条件表达式从pandas DataFrame中删除行

我有一个pandas DataFrame,我想删除它中的行,其中特定列中的字符串长度大于2.我知道我可以df.dropna()用来摆脱包含any的行NaN,但我没有看到如何基于条件表达式删除行.

这个问题的答案似乎与我想要的非常接近 - 似乎我应该能够做到这样的事情:

df[(len(df['column name']) < 2)]
Run Code Online (Sandbox Code Playgroud)

但我得到错误:

KeyError: u'no item named False'
Run Code Online (Sandbox Code Playgroud)

谁能告诉我我做错了什么?

python pandas

255
推荐指数
6
解决办法
43万
查看次数

我什么时候应该在我的代码中使用pandas apply()?

这是一个自我回答的QnA,旨在指导用户应用的缺陷和好处.

我已经看到很多关于Stack Overflow问题的答案涉及使用apply.我也看到用户评论他们说" apply很慢",应该避免".

我已经阅读了很多关于性能主题的文章,解释apply很慢.我还在文档中看到了一个关于如何apply简单地传递UDF的便利函数的免责声明(现在似乎无法找到).因此,普遍的共识是,apply如果可能,应该避免.但是,这引发了以下问题:

  1. 如果apply是如此糟糕,那为什么它在API中呢?
  2. 我应该如何以及何时制作我的代码apply- 免费?
  3. 是否有过任何地方的情况apply不错的(比其他可能的解决方案更好)?

python performance apply pandas

68
推荐指数
3
解决办法
8380
查看次数

如果全部为零,则删除Pandas中的列

我目前有一个由1和0作为值的列组成的数据帧,我想迭代列并删除仅由0组成的列.这是我到目前为止所尝试的:

ones = []
zeros = []
for year in years:
    for i in range(0,599):
        if year[str(i)].values.any() == 1:
            ones.append(i)
        if year[str(i)].values.all() == 0:
            zeros.append(i)
    for j in ones:
        if j in zeros:
            zeros.remove(j)
    for q in zeros:
        del year[str(q)]
Run Code Online (Sandbox Code Playgroud)

在哪些年份是我正在分析的不同年份的数据框列表,其中包含列中包含一个的列,而零是包含全零的列的列表.有没有更好的方法根据条件删除列?出于某种原因,我必须检查那些列是否也在零列表中,并从零列表中删除它们以获得所有零列的列表.

python pandas

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

Python Pandas - 了解inplace = True

pandas库中很多次都有一个选项来更改对象,例如使用以下语句...

df.dropna(axis='index', how='all', inplace=True)
Run Code Online (Sandbox Code Playgroud)

我很好奇返回的内容以及inplace=True传递对象时的处理方式inplace=False.

正在修改的所有操作selfinplace=True?什么时候inplace=False立即创建一个新对象new_df = self,然后new_df返回?

python in-place pandas

53
推荐指数
4
解决办法
8万
查看次数

根据列值而不是索引值从pandas数据框中排除行

我查看了数据框列中的唯一值 - 我拥有的pandas.并且在其中一个列中有一些我不想包含的名称,如何在不使用索引值表示法的情况下从数据框中删除这些行,而是说如果行值="this"则删除

喜欢...

new = df.copy

df['some column'].drop_values('this','that','other')
Run Code Online (Sandbox Code Playgroud)

python pandas

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

删除 pandas 数据框中包含特定值的列和行

我有一个 pandas 数据框,看起来像这样(但实际上要大得多):

           a    b    c    d    e      f      g     h    i    j

       0|  0    1    2    3    4    -500   -500    5    6    7 
       1|  2    3    4    5    6    -500   -500    6    5    4
       2|-500 -500 -500 -500 -500   -500   -500  -500 -500 -500
       3|  3    4    5    2    1    -500   -500    5    3    6
Run Code Online (Sandbox Code Playgroud)

我只想删除包含 -500 (2) 的整行和整列(f 和 g)。我的数据框是自动生成的,我还不知道哪些列和行包含-500。

有人知道如何做到这一点吗?

谢谢!

python filtering dataframe pandas

7
推荐指数
1
解决办法
2668
查看次数

删除列值<0的Pandas DataFrame行

我已经阅读了这个帖子中的答案,但它没有回答我的确切问题.我的DataFrame看起来像这样

                      Lady in the Water  The Night Listener  Just My Luck  Correlation
Claudia Puig                    NaN                 4.5           3.0     0.893405
Gene Seymour                    3.0                 3.0           1.5     0.381246
Jack Matthews                   3.0                 3.0           NaN     0.662849
Lisa Rose                       2.5                 3.0           3.0     0.991241
Michael Phillips                2.5                 4.0           NaN    -1.000000
Mick LaSalle                    3.0                 3.0           2.0     0.924473
Run Code Online (Sandbox Code Playgroud)

我想删除Michael Phillips的行,因为他的相关值低于零.至于说,我尝试了不同的组合df = df[df.Correlation]df = df.drop(),但找不到任何工作.

python pandas

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

标签 统计

python ×10

pandas ×8

dataframe ×2

apply ×1

filtering ×1

in-place ×1

jython ×1

performance ×1

time ×1