Python pd.DataFrame(np.random.rand(100,4).cumsum(0),columns=['A','B','C','D']) 是什么意思?求大神

如题所述

pd.DataFrame()函数是创建一个二维表

传入的两个参数:

第一个是所存放的数据

np.random.rand(100,4) 这个的意思是生成指定维度的的[0,1)范围之间的随机数,生成为维度100行4列的二维数组,下面的例子你可以作为参照

请点击输入图片描述

而之后的

cumsum()其实第一个参数本来传入的需要是数组,然后计算轴向元素累加和,

而你的例子中进行了简化,即np.cumsum(a, 0) == a.cumsum(0)

其中的传入参数0表示axis=0,即按照行累加,例子中即随机数的累加

举个例子a =[ [(1,2,3)],

                     [(4,5,6)] ]

a.cumsum(0)就是

[ [(1,2,3)],

  [(5,7,9)] ]~~~~~~~~(1+4)(2+5)(3+6)

第二个参数columns是DataFrame的列名分别为ABCD

追问

你好,还想问一下这个图的横坐标和纵坐标表示什么?

追答

先回答你的问题
x轴0-50是数组的行数
y轴代表的是行列对应的数据,行数就是x轴,列数是你定义的ABCD
然后算是一句建议,像我一样的人一生可能只会帮你一次,我希望你学会的是怎么去独立解决思考问题,这样在以后某些不能或者很难依靠别人的情况下自己也可以尽力处理问题。
这只是建议哈,不是说你就不独立思考什么的,只是希望爱学习的你能找到学习的方法

追问

谢谢,你一眼就看穿我的问题了,我遇到问题的时候,多数会先百度找一下,找不到之后就挺喜欢在这儿直接问的,极少是靠自己解决的......不知道怎么办,对百度知道有点依赖了

追答

嗯,是会这样的,我有时候也会一遇到问题就去在百度上寻找答案,但是次数多了之后你就会发现,这样只能暂时性解决问题,就像你现在的,这些都是基础的函数定义问题,相应的函数接口文档里肯定有详细解释的。
我能给的建议就是可以一步步来,你可以在提问的同时去博客寻找你相关的问题,在有人回答之后相应对照你自己的理解是否正确,有什么不懂或者疑问的刚好能和回答者相互对照

追问

好的,谢谢,下次问完尝试一下自己找

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-21
生成一个DataFrame(类似于Excel的表格),用随机数填充,100行4列,cumsum是为了让填充的数值逐渐增加的(累加),也就是每列从上往下越来越大,每列的列名分别为ABCD。
相似回答