我試圖用我所定義的名稱定義列名的
print fieldNameList
[u'A', u'B', u'C', u'D', u'E', u'F', u'G', u'H', u'I', u'J', u'K', u'L', u'M', u'N', u'S']
的名單,然後np.dtype
指定列名列表「數據類型不理解」錯誤,陣列串
field_name = ', '.join(["('%s', '<f8')" % w for w in fieldNameList])
print field_name
('A', '<f8'), ('B', '<f8'), ('C', '<f8'), ('D', '<f8'), ('E', '<f8'), ('F', '<f8'), ('G', '<f8'), ('H', '<f8'), ('I', '<f8'), ('J', '<f8'), ('K', '<f8'), ('L', '<f8'), ('M', '<f8'), ('N', '<f8'), ('S', '<f8')
然後
inarray = np.array(tup1,
np.dtype([field_name]))
我得到一個錯誤
np.dtype([field_name]))
TypeError: data type not understood
代替變量時輸入產生FIELD_NAME獲得所需的結果
inarray = np.array(tup1,
np.dtype([('A', '<f8'), ('B', '<f8'), ('C', '<f8'), ('D', '<f8'), ('E', '<f8'), ('F', '<f8'), ('G', '<f8'), ('H', '<f8'), ('I', '<f8'), ('J', '<f8'), ('K', '<f8'), ('L', '<f8'), ('M', '<f8'), ('N', '<f8'), ('S', '<f8')]))
的數量和列的名稱取決於輸入表。它定義了用戶。爲什麼不能在腳本中定義列的數量和名稱。
有沒有人有一個想法如何解決這個問題? 在此先感謝
日Thnx非常@unutbu – kamfulebu
完美。再次感謝:) – kamfulebu
當您使用字典方法時,您可以使用unicode對象作爲字段名稱:https://stackoverflow.com/a/45936203/1025391 – moooeeeep