小编ast*_*123的帖子

如何在C ++中使用memset?

我来自Python,最近学习C ++。我正在学习一个名为C / C ++的函数,memset并从https://www.geeksforgeeks.org/memset-in-cpp/网站中遵循在线示例,在该示例中我遇到了一些编译错误:

/**
 * @author      : Bhishan Poudel
 * @file        : a02_memset_geeks.cpp
 * @created     : Wednesday Jun 05, 2019 11:07:03 EDT
 * 
 * Ref: 
 */

#include <iostream>
#include <vector>
#include <cstring>

using namespace std;

int main(int argc, char *argv[]){
    char str[] = "geeksforgeeks";

    //memset(str, "t", sizeof(str));
    memset(str, 't', sizeof(str));

    cout << str << endl;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

使用单引号't'时出错
这将打印多余的字符。

tttttttttttttt!R@`
Run Code Online (Sandbox Code Playgroud)

在双引号中使用“ t”时出错

tttttttttttttt!R@`
Run Code Online (Sandbox Code Playgroud)

如何在C ++中使用memset?

进一步的研究此处
提供了具有缺点的优秀教程memsethttps : //web.archive.org/web/20170702122030/https …

c++ string initialization memset string-literals

28
推荐指数
4
解决办法
3599
查看次数

熊猫groupby两列和图

我有一个这样的数据框:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline

df = pd.DataFrame({'category': list('XYZXY'), 'B': range(5,10),'sex': list('mfmff')})
Run Code Online (Sandbox Code Playgroud)

我想根据“类别”列中的类别绘制男性或女性性别计数。

我试过了:
df.groupby(['category','sex'])['category','sex'].count().plot.bar()

但这给出了: 在此处输入图片说明

如何获得每个类别的性别计数?

python pandas

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

如何使字典键是熊猫数据框的一列?

我有一个数据框,其中一列包含包含字典的字符串化列表。我想知道如何从这些字典键中创建新列。

我正在寻找使用pandas方法的解决方案,例如“ apply stack etc不使用循环”。

这是问题所在:

speakers = ['Einstein','Newton']
views = [1000,2000]
ratings0 = ("[{'id': 7, 'name': 'Funny', 'count': 100}, {'id': 1, 'name': 'Sad', "
 "'count': 110}, {'id': 9, 'name': 'Happy', 'count': 120}]")

ratings1 = ("[{'id': 7, 'name': 'Happy', 'count': 200}, {'id': 3, 'name': 'Funny', "
 "'count': 210}, {'id': 2, 'name': 'Sad', 'count': 220}]")


ratings = [ratings0, ratings1]
df = pd.DataFrame({'speaker': speakers, 'ratings': ratings,'views':views})

print(df)
speaker                                            ratings  views
0  Einstein  [{'id': 7, 'name': 'Funny', 'count': 100}, {'i...   1000
1 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

如何绘制熊猫柱频率计数?

我有一个这样的熊猫数据框:

    Year   Winner
4   1954  Germany
9   1974  Germany
13  1990  Germany
19  2014  Germany
5   1958   Brazil
6   1962   Brazil
8   1970   Brazil
14  1994   Brazil
16  2002   Brazil
Run Code Online (Sandbox Code Playgroud)

如何绘制Winner列的频率计数,以便y轴具有频率,x轴具有国家/地区名称?

我试过了:

import numpy as np
import pandas as pd

df.groupby('Winner').size().plot.hist()
df1['Winner'].value_counts().plot.hist()
Run Code Online (Sandbox Code Playgroud)

python pandas

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

如何重复每个数组元素等于元素值的次数?

我有一个numpy的数组:

import numpy as np

a = np.array([2,5,1])
Run Code Online (Sandbox Code Playgroud)

我如何使用numpy或pandas或列表理解等获取这样的数组?(不使用for循环)

[2,2,5,5,5,5,5,1]
Run Code Online (Sandbox Code Playgroud)

python numpy

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

熊猫:如何查找列的装箱平均值

我们如何才能有效地在pandas数据框中找到列的合并平均值?

我喜欢将专栏分为5部分,并找到每一部分的平均值。

这是我所做的:

import numpy as np
import pandas as pd

df = pd.DataFrame({'x': np.arange(20)})
n_bins = 5
dfs = np.array_split(df,n_bins)

x_means = [x.mean()[0] for x in dfs]
n_elems = len(df) // n_bins
x_mean_lst = [[i]*n_elems for i in x_means]
x_mean_array = np.array(x_mean_lst).flatten()
df['x_bin_mean'] = x_mean_array
df
Run Code Online (Sandbox Code Playgroud)

这似乎比必要的更为复杂。有更好的选择吗?

输出应如下所示:

     x  x_bin_mean
0    0         1.5
1    1         1.5
2    2         1.5
3    3         1.5
4    4         5.5
5    5         5.5
6    6         5.5
7    7         5.5
8    8         9.5
9    9 …
Run Code Online (Sandbox Code Playgroud)

python numpy dataframe python-3.x pandas

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

如何使用Python查找字符串中第一个字母重复的次数?

这个看似简单的问题让我头疼了一会儿,以为有人可能会有所帮助.

我有一个简单的字符串

s = 'AAABCAA'
Run Code Online (Sandbox Code Playgroud)

如何找到第一个字母'A'的重复次数?答案应该是3.

我试过了:

from collections import Counter
c = Counter(s)
Run Code Online (Sandbox Code Playgroud)

但是,这给'A'= 5而不是3.

python

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

Python返回单行代码的行为与多行代码不同

我正在练习用python生成斐波那契序列,以及以下如何Python中打印斐波那契序列到第n个数字的记忆示例:。

然后我遇到了一个有趣的区别,那就是使用返回单线而不是返回单线。例如,下面给出示例代码。在第一个示例中,我们不使用return one-liner并且运行非常快,但是,在第二个示例中,我们使用return one-liner并且运行非常慢。

他们不是应该一样吗?

没有单线

def memoize(func):
    memo = dict()
    def decorated(n):
        if n not in memo:
            memo[n] = func(n)
        return memo[n]

    return decorated

@memoize
def fib(n):
    if n<=1:
        return 1
    else:
        return fib(n-1) + fib(n-2)

print([ fib(i) for i in range(100,110)]) # runs very fast
Run Code Online (Sandbox Code Playgroud)

一线回程

def memoize(func):
    memo = dict()
    def decorated(n):
        return func(n) if n not in memo else memo[n]

    return decorated

@memoize
def fib(n):
    if n<=1:
        return 1
    else: …
Run Code Online (Sandbox Code Playgroud)

python

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