我正在尝试以CSV格式从现有报告生成一些报告。这些CSV文件不仅包含数据,还包含报告名称,报告日期,多个数据集 - 每行不一定包含相同数量的字段或每行一致的数据。
我很好奇是否有可用的电子表格类型库,这就是我想象它的工作方式。
load some csv file into spreadsheet
report_title = spreadsheet("A1")
report_date = spreadsheet("B2")
sales_data_spreadsheet = spreadsheet("A6:E22)")
sales_total = sales_data_spreadsheet("SUM(E1:E17)")
expenses_data_spreadsheet = spreadsheet("A26:E38")
expenses_total = expenses_data_spreadsheet("SUM(E1:E11")
答案 0 :(得分:1)
Microsoft Excel?
您没有电子表格,您已经描述了具有混合格式和一些元数据的平面文件。你的平面文件中有什么说销售数据是在A6:E22?事实上,A6:E22在Microsoft Excel的上下文之外以及数据的上下文中是什么意思?
您可以通过多种方式自行解析数据,并提供代码来管理数据格式,将其加载到一组数据库表中,并使用SQL将其分解为多个部分。您选择哪种方式取决于数据的来源,数据来源以及使用方式。如果您提供更多这类信息,可能更容易推荐选择方法。
答案 1 :(得分:1)
我在Python&中发表了这样的library Google Spreadsheets API。库的接口与示例中的接口不完全相同,但它使用对象进行工作表和单元格表示。
即使您不熟悉Python,库的API也非常简单。
首先,您必须将CSV上传到Google Spreadsheets,然后才能访问它:
# Load the module
import gspread
# Login with your Google account
gc = gspread.login('_your_google_account_email_','password')
# Open a spreadsheet and worksheet
wks = gc.open("name of the spreadsheet").sheet1
wks.update_acell('B2', "it's down there somewhere, let me take another look.")
# Select a range
sales_data = [float(c.value) for c in worksheet.range('E1:E17')]
# Sum it up
sales_total = sum(sales_data)
或者,您可以将CSV数据导入Excel文件并使用这个精彩的Python库:xlrd