【问题标题】:How to convert pandas dataframe to matrix?如何将熊猫数据框转换为矩阵?
【发布时间】:2020-12-09 19:08:27
【问题描述】:

我想将pandas dataframe 转换为矩阵以进行一些计算,例如列均值和行均值。转换为矩阵后,它仍然给出了一个漂亮的列和行。在 R 中,我可以使用as.matrix(Chicago),这会给我一个很好的矩阵,如下所示:

但是,当我在 python 中使用np.asmatrix(chicago) 时,它给了我:

我想知道 python 是否有可能获得像 R 这样的不错的输出,这也允许我进行行均值或列均值。谢谢!

【问题讨论】:

    标签: python dataframe matrix converters


    【解决方案1】:

    试试chicago.to_numpy()。它应该满足您的需求。

    【讨论】:

      【解决方案2】:

      我建议在数据帧本身中进行计算 - 使用 pandas.mean() 函数。

      看看documentation

      如果您想获得每一行的平均值,请使用:chicago['mean'] = chicago.mean(axis=0)

      如果您想获得每一行的平均值,请使用:chicago_column_mean = chicago.mean(axis=1)

      【讨论】:

      • Chicago 是我的数据框之一,我还有来自休斯顿、纽约和旧金山的另外三个不同的数据框。如果我在数据框本身中进行计算,是否可以在不使用其他三个城市的for loop 的情况下一起进行计算? apply 之类的函数在 R 中。
      • 绝对!我建议对包含所有数据的组合数据框进行计算。为此,您将所有文件组合在一起(假设数据都相同)。 1. 将芝加哥数据移动到名为df 的新数据框 2. 添加城市列 df['city'] = 'Chicago' 3. 加载另一个城市(例如 NewYork),设置其城市:newyork['city'] = 'New York' 4. 将 newyork 数据帧附加到 df 使用: df = df.append(newyork) 如果您有足够的 RAM,我建议使用 for 循环读取所有数据并将其附加到单个数据帧,然后做所有的计算。
      猜你喜欢
      • 2021-12-14
      • 1970-01-01
      • 2017-08-27
      • 2019-04-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-05
      相关资源
      最近更新 更多