これは私のデータフレームがどのように見えるかです:パンダのデータフレームからのデータに基づいて、テキストファイルにコンポジット出力を書く
FULL_NAME ARGUMENT DEF_VALS TYPE
function1 f1_arg1 NAN NoneType
function1 f1_arg2 NAN NAN
function1 f1_arg3 NAN NAN
function2 f2_arg1 0 int
function3 f3_arg1 True bool
function3 f3_arg2 'something' str
は、ここでそのデータを再生することができます方法は次のとおりです。
このデータフレームを使用してimport pandas
D = {'FULL_NAME': ['function1', 'function1', 'function1', 'function2', 'function3', 'function3'], 'ARGUMENT': ['f1_arg1', 'f1_arg2', 'f1_arg3', 'f2_arg1', 'f3_arg1', 'f3_arg2'], 'DEF_VAL': [float('nan'), float('nan'), float('nan'), 0, True, 'something'], 'TYPE': ['NoneType', float('nan'), float('nan'), 'int', 'bool', 'str']}
dataframe = pandas.DataFrame(D)
私がする必要があります何らかの形でテキストファイルに以下の情報を書き込んでください:
a1=None
a2=
a3=
function1(f1_arg1=a1, f1_arg2=a2, f1_arg3=a3)
a1=0
function2(f2_arg1=a1)
a1=True
a2='something'
function3(f3_arg1=a1, f3_arg2=a2)
書き込み条件はフォローイングですG:デフォルト値はNAN
であり、その種類はNAN
(この場合、それは「=」記号が続くべきである)である場合を除き
{I}は引数のデフォルト値に等しくなければなりません。引き数のデフォルト値がNANで、タイプがNoneType
の場合、a {i}はNone
でなければなりません。
'FULL_NAME'列と 'ARGUMENT'列の値はすべて文字列です。
また、すべてを非常に複雑にする条件が1つあります。引数の値が特別な値(special_value)に等しい場合、関数のシグネチャに含めるべきではありません。 たとえば、関数g(W、r、dim、fix = False、r = 0)を持つ場合、 'W'が特殊な引数である場合、この関数のテキストファイルに書き込むものは次のとおりです。
a1=
a2=
a3=False
a4=0
g(r=a1, dim=a2, fix=a3, r=a4)
ここで 'a1'は 'r'に対応し、 'a2'は 'dim'などに対応し、 'W'は無視されます。
パンダを使用してどのように出力することができますか?まったく可能ですか?
EDIT:もっと簡単に言えば
、このデータフレーム持つ:
:私はそれは次のようになりたいと思いFULL_NAME ARGUMENT DEF_VALS TYPE
function1 f1_arg1 NAN NoneType
function1 f1_arg2 NAN NAN
function1 f1_arg3 NAN NAN
function2 f2_arg1 0 int
function3 f3_arg1 True bool
function3 f3_arg2 'something' str
をして、アカウントに上記の条件を撮ります
function args
function1(f1_arg1=a1, f1_arg2=a2, f1_arg3=a3) ['a1=None', 'a2=', 'a3=']
function2(f2_arg1=a1) ['a1=0']
function3(f3_arg1=a1, f3_arg2=a2) ['a1=True', 'a2=something']
このような長い質問をお詫び申し上げます... – BigBear
[最小限の、完全で検証可能な](https://stackoverflow.com/help/mcve)の例を提供した場合は役に立ちます。 SOコミュニティがどのように働くかではなく、あなたのために書かれたものが何かを説明しているようです。あなたの質問を編集して、試してみる必要がある特定の部分だけを含めるようにしてください。 –
@AndrewL他の方法でこれをどのように記述するのか分かりません。私は私ができる限り短くて明確にしようとするときに、私が助けが必要なものを正確に記述しています。しかし、私はそれをより明確にするために編集します。 – BigBear