小编spa*_*Ash的帖子

对于Excel值,无法将类型"double"转换为"string"

我正在加载一个Excel文件,如网上许多地方所示.

OpenFileDialog chooseFile = new OpenFileDialog();
            chooseFile.Filter = "Excel files (*.xls,*.xlsl)|*.xls;*.xlsx";
            if (chooseFile.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                selectedFileName = chooseFile.FileName;                
                textBox1.Text = selectedFileName;
                Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
                Workbook wb = excel.Workbooks.Open(selectedFileName);                
                Sheets excelSheets = wb.Worksheets;
                string currentSheet = "Sheet 1";
                excelWorksheet = (Worksheet)excelSheets.get_Item(currentSheet);
                Range usedRange = excelWorksheet.UsedRange;
                Range lastCell = usedRange.SpecialCells(XlCellType.xlCellTypeLastCell, Type.Missing);
                lastRow = lastCell.Row;
                lastColumn = lastCell.Column;

                //release com object you won't need.
                Marshal.ReleaseComObject(excel);
                Marshal.ReleaseComObject(wb);

            }
Run Code Online (Sandbox Code Playgroud)

当我尝试从具有此功能的单元格中获取单个值时出现问题:

private string getCellValue(Worksheet Sheet, int Row, int Column)
        {            
            var cellValue = …
Run Code Online (Sandbox Code Playgroud)

c# excel visual-studio-2010

3
推荐指数
1
解决办法
2万
查看次数

捕获 numpy runtimewarning 作为异常并抑制它们

我知道这里已经部分回答了这个问题

无论如何,我不确定我是否实现了我想要的。我将简要说明我在做什么:

  • 阅读大量具有特别嵌套结构的 json 文件列表。
  • 从它们中提取最低级别的值并在这些值是列表时取平均值。
  • 将这些值收集到 numpy 数组中。
  • 将我的 numpy 数组转储到腌制文件中。

一切都很顺利,但我收到了一些 numpy 运行时警告:

  • RuntimeWarning: Mean of empty slice.
  • RuntimeWarning: invalid value encountered in double_scalars

给我带来麻烦的函数是实际提取执行此操作的值的函数: v = np.mean(v)

我知道错误可能是由零列表或一些 NaN/Inf 或值中的任何内容引起的。

我想通过从我的数据集中扔掉当前的 .json 样本来摆脱它们。

所以我设置了: np.seterr(all='warn')

我编写了这个笨拙的代码来试图抓住它:

def ExtracValues(d):
    for v in d.values():
        if isinstance(v, dict):
            yield from ExtracValues(v)
        else:
            if isinstance(v,list):
                # v = np.mean(v)            #just averaging vectorial values of features.   #it may be here that raises the empty slice warning of numpy.
                try:
                    v …
Run Code Online (Sandbox Code Playgroud)

python json warnings numpy exception

3
推荐指数
1
解决办法
5385
查看次数

标签 统计

c# ×1

excel ×1

exception ×1

json ×1

numpy ×1

python ×1

visual-studio-2010 ×1

warnings ×1