我有一个包含40张左右的Excel(.xlsx)文件。每张纸具有相同的结构,但包含不同的数据。我想从每张纸中提取信息并将其合并为一张,每张纸的信息叠加在另一张纸上。我需要从每个中提取的信息有两个:
此提取的信息将粘贴在合并工作表的第2-15行中,工作表名称在一列中,所有其他信息在其旁边的列中。然后,来自提取的下一张纸的信息将被粘贴到第16-29行等等。
我是Python的新手,我正在运行Python 3.6.1。我已经找到了如何使用Python组合Excel文件的解决方案,但没有用于从Excel工作表中的指定单元格中提取信息。
任何指导都会非常有用。
更新1:我设法将一张纸张的区域加载到数据框中。
// asynchronous function
exports.playlistPlayer = async (req, res, next) => {
// wait for the findById method promise to resolve
const playlist = await Playlist.findById({
_id: req.body.playlist._id
})
// wait for finding all songs in db whose id's are in
// the playlist.songs array
const songs = await Song.find({
_id: { $in: playlist.songs }
})
// create the customAlbum by using the map method to
// tramsform the song objects to the required form
const customAlbum = songs.map(song => ({
title: song.title,
time: song.time,
source: song.source,
song_id: song._id
}))
// and there you should now have your customAlbum array
console.log(customAlbum)
// now you can use it for example
// to return a response to the client:
// res.json(customAlbum)
}
但是,我仍然需要将工作表名称添加到数据框中,然后在所有工作表上运行相同的循环,然后最终将每个工作表中的信息一起附加到一个数据框/文件中。
答案 0 :(得分:2)
这应该足以让你入门:
my_list
如果您已经非常熟悉excel,那么您将快速拿起大熊猫。你应该绝对考虑使用python的jupyter笔记本。 Jupyter笔记本基本上会创建一个像UI这样的电子表格,其中包含大量功能,用于运行分析和操作数据。
参考文献:
Use PANDAS to read multiple sheets from same workbook