小编Nil*_*age的帖子

从变量中的值构造pandas DataFrame会给出"ValueError:如果使用所有标量值,则必须传递索引"

这可能是一个简单的问题,但我无法弄清楚如何做到这一点.可以说我有两个变量如下.

a = 2
b = 3
Run Code Online (Sandbox Code Playgroud)

我想从这构造一个DataFrame:

df2 = pd.DataFrame({'A':a,'B':b})
Run Code Online (Sandbox Code Playgroud)

这会产生错误:

ValueError:如果使用所有标量值,则必须传递索引

我也尝试了这个:

df2 = (pd.DataFrame({'a':a,'b':b})).reset_index()
Run Code Online (Sandbox Code Playgroud)

这给出了相同的错误消息.

python scalar dataframe pandas

288
推荐指数
16
解决办法
31万
查看次数

如何检查pandas DataFrame是否为空?

如何检查大熊猫是否DataFrame为空?在我的情况下,我想在终端打印一些消息,如果它DataFrame是空的.

python dataframe pandas

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

删除pandas中数据帧的前三行

我需要删除pandas中数据帧的前三行.

我知道df.ix[:-1]会删除最后一行,但我无法弄清楚如何删除前n行.

python pandas

140
推荐指数
7
解决办法
19万
查看次数

Pandas DataFrame Groupby两列并获得计数

我有以下格式的pandas数据帧:

df = pd.DataFrame([[1.1, 1.1, 1.1, 2.6, 2.5, 3.4,2.6,2.6,3.4,3.4,2.6,1.1,1.1,3.3], list('AAABBBBABCBDDD'), [1.1, 1.7, 2.5, 2.6, 3.3, 3.8,4.0,4.2,4.3,4.5,4.6,4.7,4.7,4.8], ['x/y/z','x/y','x/y/z/n','x/u','x','x/u/v','x/y/z','x','x/u/v/b','-','x/y','x/y/z','x','x/u/v/w'],['1','3','3','2','4','2','5','3','6','3','5','1','1','1']]).T
df.columns = ['col1','col2','col3','col4','col5']
Run Code Online (Sandbox Code Playgroud)

DF:

   col1 col2 col3     col4 col5
0   1.1    A  1.1    x/y/z    1
1   1.1    A  1.7      x/y    3
2   1.1    A  2.5  x/y/z/n    3
3   2.6    B  2.6      x/u    2
4   2.5    B  3.3        x    4
5   3.4    B  3.8    x/u/v    2
6   2.6    B    4    x/y/z    5
7   2.6    A  4.2        x    3
8   3.4    B  4.3  x/u/v/b    6 …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

138
推荐指数
6
解决办法
32万
查看次数

Pandas数据帧获得每个组的第一行

我有一只DataFrame像熊猫一样的熊猫.

df = pd.DataFrame({'id' : [1,1,1,2,2,3,3,3,3,4,4,5,6,6,6,7,7],
                'value'  : ["first","second","second","first",
                            "second","first","third","fourth",
                            "fifth","second","fifth","first",
                            "first","second","third","fourth","fifth"]})
Run Code Online (Sandbox Code Playgroud)

我想通过["id","value"]对此进行分组,并得到每个组的第一行.

        id   value
0        1   first
1        1  second
2        1  second
3        2   first
4        2  second
5        3   first
6        3   third
7        3  fourth
8        3   fifth
9        4  second
10       4   fifth
11       5   first
12       6   first
13       6  second
14       6   third
15       7  fourth
16       7   fifth
Run Code Online (Sandbox Code Playgroud)

预期结果

    id   value
     1   first
     2   first
     3   first
     4  second
     5 …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

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

拆分大型pandas数据帧

我有一个423244行的大型数据帧.我想将其拆分为4.我尝试了下面的代码,它给出了一个错误?ValueError: array split does not result in an equal division

for item in np.split(df, 4):
    print item
Run Code Online (Sandbox Code Playgroud)

如何将此数据帧拆分为4组?

python pandas

51
推荐指数
9
解决办法
8万
查看次数

根据条件获取数据帧行数

我想根据条件选择得到数据帧行的计数.我尝试了以下代码.

print df[(df.IP == head.idxmax()) & (df.Method == 'HEAD') & (df.Referrer == '"-"')].count()
Run Code Online (Sandbox Code Playgroud)

输出:

IP          57
Time        57
Method      57
Resource    57
Status      57
Bytes       57
Referrer    57
Agent       57
dtype: int64
Run Code Online (Sandbox Code Playgroud)

输出显示数据框中每列的每个列的计数.相反,我需要获得满足上述所有条件的单一计数?这该怎么做?如果您需要有关我的数据帧的更多说明,请告诉我.

python pandas

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

对Pandas数据帧进行排序并打印最高n值

我有一个pandas数据框,我想按降序排序列('字节')并打印最高10个值及其相关的"客户端IP"列值.假设以下是我的数据帧的一部分.我有很多不同的方法而且失败了?

0       Bytes    Client Ip                
0       1000      192.168.10.2    
1       2000      192.168.10.12    
2       500       192.168.10.4     
3       159       192.168.10.56 
Run Code Online (Sandbox Code Playgroud)

以下仅打印具有最高值的原始值.

print df['Bytes'].argmax()
Run Code Online (Sandbox Code Playgroud)

sorting max dataframe pandas

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

获取跨列的值 - Pandas DataFrame

我有一个像下面这样的Pandas DataFrame:

               A              B              C
0   192.168.2.85   192.168.2.85  124.43.113.22
1  192.248.8.183  192.248.8.183   192.168.2.85
2  192.168.2.161            NaN  192.248.8.183
3   66.249.74.52            NaN  192.168.2.161
4            NaN            NaN   66.249.74.52
Run Code Online (Sandbox Code Playgroud)

我想获得跨列的特定值的计数.所以我的预期输出是这样的:

IP          Count
192.168.2.85 3 #Since this value is there in all coulmns
192.248.8.183 3
192.168.2.161 2
66.249.74.52 2
124.43.113.22 1
Run Code Online (Sandbox Code Playgroud)

我知道如何跨行,但对列进行此操作有点奇怪吗?帮帮我解决这个问题?谢谢.

python dataframe pandas

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

根据分布生成随机数

我想根据一些发行版生成随机数.我怎样才能做到这一点?

random distribution

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

标签 统计

pandas ×9

python ×8

dataframe ×6

distribution ×1

max ×1

random ×1

scalar ×1

sorting ×1