You need to wrap the dictionary into a list before creating the dataframe:
data = {'masterId': 2, 'name': 'name', 'description': 'xyz', 'signalTypeRefId': 4, 'unitOfMeasureRefId': 1, 'precision': 1, 'min': -125, 'max': 125, 'isDeprecated': False}
df = spark.createDataFrame([data])
df.show()
+-----------+------------+--------+---+----+----+---------+---------------+------------------+
|description|isDeprecated|masterId|max| min|name|precision|signalTypeRefId|unitOfMeasureRefId|
+-----------+------------+--------+---+----+----+---------+---------------+------------------+
| xyz| false| 2|125|-125|name| 1| 4| 1|
+-----------+------------+--------+---+----+----+---------+---------------+------------------+
Or you can convert it to a pandas dataframe and create a Spark dataframe from that, though you still need to wrap the dictionary into a list:
data = {'masterId': 2, 'name': 'name', 'description': 'xyz', 'signalTypeRefId': 4, 'unitOfMeasureRefId': 1, 'precision': 1, 'min': -125, 'max': 125, 'isDeprecated': False}
df = spark.createDataFrame(pd.DataFrame([data]))
df.show()
+--------+----+-----------+---------------+------------------+---------+----+---+------------+
|masterId|name|description|signalTypeRefId|unitOfMeasureRefId|precision| min|max|isDeprecated|
+--------+----+-----------+---------------+------------------+---------+----+---+------------+
| 2|name| xyz| 4| 1| 1|-125|125| false|
+--------+----+-----------+---------------+------------------+---------+----+---+------------+
list! Try to name your variable differently.