您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – 如何将numpy数组作为对象存储在pandas数据框中?

5b51 2022/1/14 8:23:52 python 字数 2576 阅读 625 来源 www.jb51.cc/python

我有一系列图像,存储在CVS文件中,每个图像一个字符串,该字符串是9216空格分隔整数的列表.我有一个函数将其转换为96x96 numpy数组.我希望将这个numpy数组存储在我的数据帧的一列而不是字符串中.但是,当我从列中检索项目时,它不再可用作numpy数组.数据可以从这里下载,即training.cvs文件的最后一列.https://www.kaggl

概述

我有一系列图像,存储在CVS文件中,每个图像一个字符串,该字符串是9216空格分隔整数的列表.我有一个函数将其转换为96×96 numpy数组.

我希望将这个numpy数组存储在我的数据帧的一列而不是字符串中.

但是,当我从列中检索项目时,它不再可用作numpy数组.

数据可以从这里下载,即training.cvs文件的最后一列.

https://www.kaggle.com/c/facial-keypoints-detection/data

import pandas as pd
import numpy as np

df_train = pandas.read_csv("training.csv")

def convert_to_np_arr(im_as_str):
    im = [int(i) for i in im_as_str.split()]
    im = np.asarray(im)
    im = im.reshape((96,96))
    return im

df_train['Im_as_np'] = df_train.Image.apply(convert_to_np_arr)

im = df_train.Im_as_np[0]
plt.imshow(im,cmap = cm.Greys_r)
plt.show()

如果不使用该函数并应用和存储图像,我直接使用代码它按预期工作

import pandas as pd
import numpy as np

df_train = pandas.read_csv("training.csv")

im = df_train.Image[0]
im = [int(i) for i in im.split()]
im = np.asarray(im)
im = im.reshape((96,96))

plt.imshow(im,cmap = cm.Greys_r)
plt.show()

im=df_train.ix[0,'Im_as_np']

总结

以上是编程之家为你收集整理的python – 如何将numpy数组作为对象存储在pandas数据框中?全部内容,希望文章能够帮你解决python – 如何将numpy数组作为对象存储在pandas数据框中?所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶