Cannot apply indexing with [] to an expression of type `object'
Whats the issue here? 

DynamicConfigFile dataFile = Interface.Oxide.DataFileSystem.GetDatafile("playerstats");
if (dataFile["EpicCategory"]["EpicString"] != null)
{
Puts(dataFile["EpicCategory"]["EpicString"]); // Outputs: EpicValue
}
Provide us full code, because that fragment give us nothing
using Oxide.Core;
using Oxide.Core.Configuration;
using Oxide.Core.Database;
namespace Oxide.Plugins
{
[Info("PlayerStats", "OlleThunberg", "0.1")]
public class PlayerStats : CovalencePlugin
{
Core.MySql.Libraries.MySql _sql = Interface.GetMod().GetLibrary<Core.MySql.Libraries.MySql>();
Connection _sqlCon;
void Init()
{
_sqlCon = _sql.OpenDb("localhost", 3306, "umod", "root", "", this);
Puts("123");

}
void OnEntityDeath(BaseCombatEntity entity, HitInfo info)
{

if (info == null || entity == null) return;
var player = info.Initiator?.ToPlayer();
var attacker = info.Initiator?.ToPlayer();
if (player == null) return;

if (attacker != null && attacker.userID == player.userID)
return;

if(entity.ToPlayer() != null)
{
string query = $"UPDATE umod WHERE steam64id = {entity.ToPlayer().userID.ToString()} SET kills = kills + 1";
Sql updateCommand = Oxide.Core.Database.Sql.Builder.Append(query);

_sql.Update(updateCommand, _sqlCon, rowsAffected =>
{
if (rowsAffected > 0)
{
Puts("Record successfully updated!");
}
});
}

}
void OnPlayerInit(BasePlayer player)
{

player.SendConsoleCommand("chat.add", player.UserIDString, "Innited player");

DynamicConfigFile dataFile = Interface.Oxide.DataFileSystem.GetDatafile("playerstats");

if (dataFile[$"{player.UserIDString}"] == null)
{
dataFile[$"{player.userID.ToString()}"]["userid"] = "123";
player.SendConsoleCommand("chat.add", player.UserIDString, "Added to players stats.");

dataFile.Save();
}else
{
player.SendConsoleCommand("chat.add", player.UserIDString, "Player found in datafiles.");

}

// Check if the EpicNumber exists
if (dataFile["EpicNumber"] != null)
{

}

}
}
}
In response to Orange ():
Provide us full code, because that fragment give us nothing
Posted it.
In response to OlleThunberg ():
Posted it.
As i see you didn't provided normal class to collect your data.
In response to Orange ():
As i see you didn't provided normal class to collect your data.
Uhm, im really new to this? Can you explain a bit more?
In response to OlleThunberg ():
Uhm, im really new to this? Can you explain a bit more?
Your problem - you didn't thinked about a way how you will save data. Dictionary? Class? 

You need to decide what you will use