У меня есть файл с 1M строками, который я пытаюсь прочитать в 20 DataFrames. Я заранее не знаю, какая строка принадлежит DataFrame или насколько большой будет каждый DataFrame. Как я могу обработать этот файл в DataFrames эффективно? Я попытался сделать это несколькими разными способами. Вот что у меня есть:Pandas Dataframes: как эффективно их построить
data = pd.read_csv(r'train.data', sep=" ", header = None) # Not slow
def collectData(row):
id = row[0]
df = dictionary[id] # Row content determines which dataframe this row belongs to
next = len(df.index)
df.loc[next] = row
data.apply(collectData, axis=1)
Это очень медленно. Что я делаю не так? Если я просто применил пустую функцию, мой код запускается через 30 секунд. С фактической функцией она занимает не менее 10 минут, и я не уверен, закончится ли она.
Вот несколько примеров строк из набора данных:
1 1 4
1 2 2
1 3 10
1 4 4
Полный набор данных доступен here (если вы нажмете на Matlab версии)
могли бы вы уточнить следующее: 1), что 'data' выглядит как 2), что остальная часть строки' данных = pd.read ... '3), что делает исходный файл выглядите как (строки выборки) –