用 python 求 3 维向量的大小
find magnitude of 3 dimensional vectors with python
我试图通过查找其他三列的大小在 DataFrame 中创建一个新列,但出现此错误。
TypeError: cannot convert the series to <class 'float'>
有什么解决办法吗?
df = pd.read_csv('./data/all.csv')
df['f_magni'] = math.sqrt( (df['fx'])**2 + (df['fz'])**2 + (df['fy'])**2)
它适用于正常计算,但不适用于上述过程。
我的 csv 包含带浮点数和整数的正数、负数。
我可以得到一些帮助吗?
您可以在 Series 对象上使用 numpy.sqrt
:
import numpy as np
df['f_magni'] = np.sqrt(df['fx']**2 + df['fz']**2 + df['fy']**2)
或者只使用 pow
函数:
df['f_magni'] = (df['fx']**2 + df['fz']**2 + df['fy']**2).pow(1/2)
我试图通过查找其他三列的大小在 DataFrame 中创建一个新列,但出现此错误。
TypeError: cannot convert the series to <class 'float'>
有什么解决办法吗?
df = pd.read_csv('./data/all.csv')
df['f_magni'] = math.sqrt( (df['fx'])**2 + (df['fz'])**2 + (df['fy'])**2)
它适用于正常计算,但不适用于上述过程。
我的 csv 包含带浮点数和整数的正数、负数。
我可以得到一些帮助吗?
您可以在 Series 对象上使用 numpy.sqrt
:
import numpy as np
df['f_magni'] = np.sqrt(df['fx']**2 + df['fz']**2 + df['fy']**2)
或者只使用 pow
函数:
df['f_magni'] = (df['fx']**2 + df['fz']**2 + df['fy']**2).pow(1/2)