2017-09-05 11 views
1

CSVファイルからMappedFieldデータ(Abaqusの)読み:のAbaqus/Pythonは、私は、Pythonで、以下の分析フィールドを指定したい

mdb.models['Model-1'].MappedField(name='AnalyticalField-1', description='', 
     regionType=POINT, partLevelData=False, localCsys=None, 
     pointDataFormat=XYZ, fieldDataType=SCALAR, xyzPointData=((0.0, 0.0, 
     0.0, 100.0), (-0.5, -0.5, 0.0, 50.0), (0.5, -0.5, 0.0, 50.0), (-0.5, 
     0.5, 0.0, 50.0), (0.5, 0.5, 0.0, 50.0))) 

をどのように私は、CSVファイルからxyzPointDataを読み取ることによって、これを行うことができます外見は

[Data] 
X , Y , Z , Temperature 

0.0, 0.0, 0.0, 100.0 
-0.5, -0.5, 0.0, 50.0 
0.5, -0.5, 0.0, 50.0 
-0.5, 0.5, 0.0, 50.0 
0.5, 0.5, 0.0, 50.0 

? (確かに私は5点以上を持っています)おそらく単純な方法がありますが、私はまだ解決策を見つけられませんでした。あなたの助けをありがとう。

+0

あなたがどこにいるのか詳細を表示できますか?これはシンプルなのですか?CSVの質問を読むにはどうすればいいですか?このサイトを検索すると、関連する質問がたくさんあります。 – agentp

+0

これまでに何を試しましたか?csvファイルを読み込み、タプル各行について? – mquantin

答えて

1

agentp:読む方法だけでなく、適切な形式にすること。 mquantin:キーワードに感謝します。それが私が探し求めたものです。解決方法は次のとおりです。

path = "/home/user/test.csv" 
datalist = [] 
with open(path, "rb") as fp: 
    for row in fp.readlines(): 
     tmp = row.split(",") 
     try: 
      datalist.append((float(tmp[0]), float(tmp[1]), float(tmp[2]), float(tmp[3]))) 
     except:pass 

mdb.models['Model-1'].MappedField(name='AnalyticalField-1', description='', 
     regionType=POINT, partLevelData=False, localCsys=None, 
     pointDataFormat=XYZ, fieldDataType=SCALAR, xyzPointData=datalist) 
関連する問題