Mahmood Naderan via Python-list wrote: >>a = numpy.zeros((ws.max_row, ws.max_column), dtype=float) >>for y, row in enumerate(ws.rows): >> a[y] = [cell.value for cell in row] > > > > Peter, > > As I used this code, it gave me an error that cannot convert string to > float for the first cell. All cells are strings.
For string values you have to adapt the dtype: a = numpy.empty((ws.max_row, ws.max_column), dtype=object) for y, row in enumerate(ws.rows): a[y] = [cell.value for cell in row] If that completes and is fast enough, fine. But again, for non-numeric data numpy doesn't make much sense IMHO -- if you tell us what you're up to we may be able to suggest a better approach. -- https://mail.python.org/mailman/listinfo/python-list