向现有的 pandas DF 添加名称(字符串)列
Posted
技术标签:
【中文标题】向现有的 pandas DF 添加名称(字符串)列【英文标题】:Adding a name (string) column to an existing pandas DF 【发布时间】:2018-10-02 19:37:37 【问题描述】:我有一个来自 (1, 5000) 维的 FITS 文件的数组(浮点数据类型)。我已经从中创建了一个 pandas DF,以便以后可以将其导出为 csv。 。但是,我试图在开头(即在 [0,0] 处)添加一个额外的列,其中包含文件的名称,即“FSC0029m4226”,一个字符串。这样我就可以将第一列用作一个类,其余 5000 列用作 ML 应用程序的特征。此外,当我将来添加行时,第一列可以帮助识别候选人。除了使用 pd.DataFframe 之外,还有其他方法吗?
这是我尝试过的:
A = 'FSC0029m4226'
FSC0029m4226.insert(loc=0,column = 'Name',value = A)
但总是遇到错误,底线是,
ValueError: Big-endian buffer not supported on little-endian compiler
但是,如果我尝试使用人工样本数据,它会起作用:
xx = np.linspace(0,59.05,100)
print xx.dtype
xxx =np.reshape(xx,(1,100))
x4= pd.DataFrame(xxx)
x4.insert(loc=0,column = 'Name',value = A)
print x4
【问题讨论】:
【参考方案1】:FSC0029m4226 = pd.DataFrame(np.array(FSC0029m4226).byteswap().newbyteorder())
【讨论】:
以上是关于向现有的 pandas DF 添加名称(字符串)列的主要内容,如果未能解决你的问题,请参考以下文章
在 pandas 0.16+ 中,如何使用变量添加列来指示列名?
如何从字符串列表中的名称和类型动态创建 DataTable 列? [复制]