Preheat the oven to 375°F (190°C). Add a spoonful of vegetable shortening to a cast-iron skillet and place it in the oven to heat.
In a medium bowl, whisk together the cornmeal, flour, baking powder, salt, cinnamon, and allspice. Set aside.
In a large bowl, combine the mashed sweet potatoes, eggs, yogurt or sour cream, brown sugar, and melted butter. Mix until smooth.
Add the dry mixture into the wet ingredients in parts, alternating with the buttermilk. Mix gently until just combined. Do not overmix.
Remove the hot skillet from the oven and swirl to coat with the melted shortening.
Pour the batter into the hot skillet. Bake for 30–35 minutes or until the top is golden brown and a toothpick inserted into the center comes out clean.
Let the cornbread cool for about 10 minutes before slicing. Serve warm.