小编U10*_*ard的帖子

在Python 2.7中使用加号(+)连接大括号({})和`format`是否合适?

我正在尝试编写干净简洁的代码,并且在很多代码中,我看到有时候我看到人们的代码不一致.我问的是,有没有这样的实例

print("Cars on the road: " + cars)

比这更合适

print("Cars on the road: {}".format(cars))

或者只是一个偏好的问题?

python string concatenation string-formatting python-2.7

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

classinfo类型列表

我正在寻找的只是可能值的列表,classinfo因为该文档未提供任何值,而且我似乎无法在线找到其他任何位置,更不用说SO了。

python types class isinstance python-3.x

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

Python用相同的键对Dataframe中的行求和

我想总结数据框中具有相同行键的行。

目的是缩小数据集的大小。

例如,如果数据框看起来像这样。

Fruit       Count

Apple         10

Pear          20

Apple          5

Banana         7

Banana         12

Pear           8  

Apple          10
Run Code Online (Sandbox Code Playgroud)

我希望最终的数据框看起来像这样。

Fruit       Count

Apple         25

Pear          28

Banana        19
Run Code Online (Sandbox Code Playgroud)

我正在使用Python的pandas、numpy、matplotlib和其他数据分析包。有没有办法在 python 中使用这些包中的函数来做到这一点?

这是创建示例数据框的代码。

df = pd.DataFrame([["Apple", 10], ["Pear", 20], ["Apple", 5], ["Banana", 7], ["Banana", 12], ["Pear", 8], ["Apple", 10]], columns=["Fruit", "Count"])
Run Code Online (Sandbox Code Playgroud)

python statistics numpy pandas data-cleaning

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

将不均匀的值更改为特定的偶数

我有一个混合数据类型的数据框,我想更改 str 单元格的值(每个单元格由两个字母加三个数字组成),以便奇数变为偶数,但数字会减少。AB123 应该变成 AB122 而不会改变它之前的字母。

这是一个混合类型的示例数据框:

df = pd.DataFrame({'Opportunity':['AB122','AB123','AB125', 'AB124'],
           'Quantity': [2, 3, 4, 1],
           'Member': ["AACC", "AACC", "AACC", 'DDEE']})


print (df)
  Opportunity  Quantity Member
0       AB122         2   AACC
1       AB123         3   AACC
2       AB121         4   AACC
3       AB120         1   DDEE
Run Code Online (Sandbox Code Playgroud)

我希望结果是:

print (df2)

  Opportunity  Quantity Member
0       AB122         2   AACC
1       AB122         3   AACC
2       AB120         4   AACC
3       AB120         1   DDEE
Run Code Online (Sandbox Code Playgroud)

python dataframe python-3.x pandas

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

QtQuick - 按钮onClick事件

背景故事

所以我最近决定尝试Qt.我开始制作QtQuick Apllication.在我的设计师视图中,我有一个按钮和一个鼠标区域.


我想做的事:

当我单击按钮时,我想显示一个带有一些文本的消息框(如"Hello World").


我的问题

我怎样才能做到这一点 ?


附加信息

我试着谷歌搜索它,我试着按照这个答案.但仍然没有.我知道如何在.Net(C#和VB)中编程,我在C/C++中有一些知识,但Qt对我来说似乎很难

qt qml qt-quick qtquick2 qtquickcontrols

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

使用.iterrows()和series.nlargest()来获取Dataframe中连续的最大数字

我正在尝试创建一个使用df.iterrows()和的函数Series.nlargest.我想遍历每一行并找到最大的数字,然后将其标记为a 1.这是数据框:

A   B    C
9   6    5
3   7    2
Run Code Online (Sandbox Code Playgroud)

这是我希望的输出:

A    B   C
1    0   0
0    1   0
Run Code Online (Sandbox Code Playgroud)

这是我想在这里使用的功能:

def get_top_n(df, top_n):
    """


    Parameters
    ----------
    df : DataFrame

    top_n : int
        The top number to get
    Returns
    -------
    top_numbers : DataFrame
    Returns the top number marked with a 1

    """
    # Implement Function
    for row in df.iterrows():
        top_numbers = row.nlargest(top_n).sum()

    return top_numbers
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:AttributeError:'tuple'对象没有属性'nlargest'

如何以更整洁的方式重新编写我的功能并实际工作,将不胜感激!提前致谢

python iterator dataframe pandas

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

给定两个字符串,如何将较短的字符串分配给一个变量,将较长的字符串分配给另一个变量

我正在学习python,并想知道是否有这样做的pythonic方法.我当然可以做一个

if len(a) > len(b) :
  (x,y) = (b,a)
Run Code Online (Sandbox Code Playgroud)

等等.但这看起来有点冗长.在python中有更好的方法吗?

python python-3.x python-3.6

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

python计数数据框列值满足条件

什么是更优雅的写作方式:

df[df['income'] > 0].count()['income']
Run Code Online (Sandbox Code Playgroud)

我想简单地计算满足条件的列值的数量(在本例中,条件只是大于零,但我想要一种适用于任何任意条件或条件集的方法)。如果列名不需要在表达式中出现两次,显然会更优雅。希望应该很容易。

python python-3.x pandas

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

避免if else实例化一个类 - python

我想根据字段的值创建一个类的对象.

例如:

if r_type == 'abc':
                return Abc()
            elif r_type == 'def':
                return Def()
            elif r_type == 'ghi':
                return Ghi()
            elif r_type == 'jkl':
                return Jkl()
Run Code Online (Sandbox Code Playgroud)

什么是pythonic方法,以避免如果在这里.我正在考虑创建一个字典,其中r_type是key,classname是value,并且获取值并实例化,这是一种正确的方式,还是在python中有更好的惯用方法?

python conditional design-patterns switch-statement

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

如果密钥存在,则更新字典并附加

我有一份dictionarys列表.

list_of_dicts = [{ a: 1, b:f, c:3}, {a: y, b:q, c:z, d: 1}, ... ] 
Run Code Online (Sandbox Code Playgroud)

现在我想创建一个新的字典,如下所示:

newDict = { a: [1,y], b: [f,q], c: [3,z], d:[1]}
Run Code Online (Sandbox Code Playgroud)

我知道我可以做一个双循环,但是这很慢,因为我在字典中处理大对象(主要是NumPy数组).

newDict = {}
for l in list_of_dicts: 
    for k, v in l.items():
        if k in newDict: 
           newDict.append(v)
        else:
           newDict[k] = [v]
Run Code Online (Sandbox Code Playgroud)

怎么做得更快?

python dictionary numpy

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