Pandas 数据布局问题

Pandas data layout issue

正在尝试将图像像素数据放入 pandas 数据帧以调整 PCA。我想我让它工作了,但由于某种原因布局关闭了。当我 运行 以下代码时,我得到了这个结果 :

#read in image
img = cv2.imread('/Volumes/EXTERNAL/Stitched-Photos-for-Chris/p7_0015_20161005-949am-75m-pass-1.jpg.png',1)
row,col = img.shape[:2]
#print(row , col)

#get a unique pixel ID for each pixel

pixel = ['pixel-' + str(i) for i in range(0,row*col)]
bBand = ['bBand']
gBand = ['gBand']
rBand = ['rBand']
data = pd.DataFrame(columns=[bBand,gBand,rBand],index = pixel)

#populate data for each band
b,g,r = cv2.split(img)
data.loc[pixel,'bBand'] = b.flat[:]
data.loc[pixel,'gBand'] = g.flat[:]
data.loc[pixel,'rBand'] = r.flat[:]

print(data.head())

但是,当我 运行 基于此的教程代码时,我得到了正确的格式:

genes = ['gene' + str(i) for i in range(1,101)]

wt = ['wt' + str(i) for i in range(1,6)]
ko = ['ko' + str(i) for i in range(1,6)]

data = pd.DataFrame(columns=[*wt,*ko],index = genes)

#create random data
for gene in genes:
    data.loc[gene,'wt1':'wt5'] = np.random.poisson(lam=rd.randrange(10,10000),size=5)
    data.loc[gene,'ko1':'ko5'] = np.random.poisson(lam=rd.randrange(10,10000),size=5)

print(data.head())

正在尝试确定列中额外的 gBand 和 rBand 是发行者还是我在某处遇到的错误。谢谢你的帮助。

看起来您创建列的方式不正确,将它们设为列表

尝试:

pixel = ['pixel-' + str(i) for i in range(0,row*col)]

data = pd.DataFrame(columns=['bBand','gBand','rBand'],index = pixel)

#populate data for each band
b,g,r = cv2.split(img)
data.loc[pixel,'bBand'] = b.flat[:]
data.loc[pixel,'gBand'] = g.flat[:]
data.loc[pixel,'rBand'] = r.flat[:]

print(data.head())