これがエラーの場合に備えて、pandas 0.9.0 の最新バージョンをインストールしました。編集:これがPython 2.7であることを忘れていました。Excelファイルを読み込もうとしています。その部分は大丈夫そうです。もともと、id_company を mysql データベースに対して検証する必要があったため (コードは含まれていません)、pandas データフレームの各行に対して iteritems() を試していました。タプルに入れるのと同じ/類似のエラーメッセージ (コードは以下)。エラーメッセージが続きます。
.reindex() がありますが、以前は機能しなかったことに注意してください。reindex() は一種の万歳でした。
回避策として、おそらくターゲット SQL からインポートして結合するだけです。データセットのサイズが心配です。
import pandas as pd
def runNow():
#identify sheet
source = 'C:\Users\jlalonde\Desktop\startup_geno\startupgenome_w_id_xl_20121109.xlsx'
xls_file = pd.ExcelFile(source)
sd = xls_file.parse('Sheet1')
source_u = sd.drop_duplicates(cols = 'id_company', take_last=False)
source_r = source_u[['id_company','id_good','description', 'website','keyword', 'company_name','founded_month', 'founded_year', 'description']]
source_i = source_r.reindex() #hail mary
tup_r = [tuple(x) for x in source_i.values]
エラーは次のとおりです。
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
sg_sql_2.runNow()
File "sg_sql_2.py", line 31, in runNow
tup_r = [tuple(x) for x in source_r.values]
File "C:\Python27\lib\site-packages\pandas\core\frame.py", line 1443, in as_matrix
return self._data.as_matrix(columns).T
File "C:\Python27\lib\site-packages\pandas\core\internals.py", line 723, in as_matrix
mat = self._interleave(self.items)
File "C:\Python27\lib\site-packages\pandas\core\internals.py", line 743, in _interleave
indexer = items.get_indexer(block.items)
File "C:\Python27\lib\site-packages\pandas\core\index.py", line 748, in get_indexer
raise Exception('Reindexing only valid with uniquely valued Index '
Exception: Reindexing only valid with uniquely valued Index objects
それで、1 日のほとんどの部分でこれに頭をぶつけた後、これがバグなのか、それとも本当に明らかな何かが欠けているのか、誰か教えてもらえますか?