如何解决Pandas:对随机数行求和
我有以下代码可以生成一个 100x100 的随机整数数据帧:
import pandas as pd
import numpy as np
bin = []
cols = []
for i in range(1,101):
cols.append("count_" + str(i))
bin.append(i)
df = pd.DataFrame(np.random.randint(1,10,(100,100)),index=bin,columns=cols)
count_1 count_2 count_3 ... count_100
1 1 3 6 ... 9
2 2 8 4 ... 7
... ... ... ... ... ...
100 6 3 8 ... 2
如果我想要列的总和,我可以使用:
df.sum()
给我
count_1 516
count_2 505
count_3 503
...
count_98 534
count_99 489
count_100 521
但我想要行的总和。我该如何实现?
解决方法
你可以Puppeteer throws error with "Node not visible..."
DataFrame.sum(axis=None,skipna=None,level=None,numeric_only=None,min_count=0,**kwargs)
返回值的总和 请求的轴。
这相当于方法 numpy.sum。
Parameters axis{index (0),columns (1)}
:函数的轴
申请了。
bin = []
cols = []
for i in range(1,21):
cols.append("count_" + str(i))
bin.append(i)
df = pd.DataFrame(np.random.randint(1,10,(20,20)),index=bin,columns=cols)
for col in cols:
df[col]=df[col].astype(int)
print(df.head())
fig,ax =plt.subplots(figsize=(16,8))
for item in df[cols].sum():
print(item)
grouped=df[cols].sum().plot(kind='barh')
###########how to sum each row###########
df['sum']=0
for key,item in df.iterrows():
sum=0
for col in cols:
sum+=df.loc[key,col]
df.loc[key,'sum']=sum
print (df.head())
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。