私はパンダのデータフレームの個々の行を操作していますが、行のインデックス付けと挿入を行う際に、強制に関する問題に遭遇しています。Pandasは常に、int / floatの混合型からall-float型に強制的に変換することを望んでいるようで、この動作に対する明確なコントロールはありません。
たとえば、以下はaas intおよびbasを使用した単純なデータフレームfloatです。
import pandas as pd
pd.__version__  # '0.25.2'
df = pd.DataFrame({'a': [1], 'b': [2.2]})
print(df)
#    a    b
# 0  1  2.2
print(df.dtypes)
# a      int64
# b    float64
# dtype: objectこれは、1つの行にインデックスを付ける際の強制に関する問題です。
print(df.loc[0])
# a    1.0
# b    2.2
# Name: 0, dtype: float64
print(dict(df.loc[0]))
# {'a': 1.0, 'b': 2.2}そして、1つの行を挿入する際の強制の問題を次に示します。
df.loc[1] = {'a': 5, 'b': 4.4}
print(df)
#      a    b
# 0  1.0  2.2
# 1  5.0  4.4
print(df.dtypes)
# a    float64
# b    float64
# dtype: objectどちらの場合aも、float型に強制的に変換されるのではなく、列を整数型のままにしておきます。
.read_[type]ただし、複数のdtypeをサポートしています...
                
df.loc[[0], df.columns]