Сохранение результата цикла for в разные столбцы

Я пытаюсь запустить вложенный цикл, в котором я хочу, чтобы вывод сохранялся в четырех разных столбцах. Пусть C1R1 будет значением, которое я хочу в первой строке первого столбца, C2R2 — значением, которое я хочу во второй строке второго столбца, и т. д. То, что я придумал до сих пор, дает мне список, в котором выходные данные сохраняются следующим образом: ['C1R1', 'C2R1', 'C3R1', 'C4R1']. Это код, который я использую:

dfs1 = []
for i in range(24):
    pd = (data_json2['data']['Rows'][i])
    for j in range(4):
        pd1 = pd['Columns'][j]['Value']
        dfs1.append(pd1)

Что может быть хорошим способом добиться этого?

Обновлено: Это то, чего я хочу достичь:

    Column 1  Column 2  Column 3  Column 4
0          0        24        48        72
1          1        25        49        73
2          2        26        50        74
3          3        27        51        75
4          4        28        52        76
5          5        29        53        77
6          6        30        54        78
7          7        31        55        79
8          8        32        56        80
9          9        33        57        81
10        10        34        58        82
11        11        35        59        83
12        12        36        60        84
13        13        37        61        85
14        14        38        62        86
15        15        39        63        87
16        16        40        64        88
17        17        41        65        89
18        18        42        66        90
19        19        43        67        91
20        20        44        68        92
21        21        45        69        93
22        22        46        70        94
23        23        47        71        95

Пока это то, что я получил сейчас:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39]

Спасибо.

Итак, является ли результат списком, в каждой строке которого есть три нуля и одно значение? Или вы ожидаете 24 значения в каждой строке, 23 значения нет и одно значение?

Ben 22.11.2022 16:24

Результатом является список с нулевым нулем, проблема в том, что все значения хранятся в одном столбце, мне бы хотелось, чтобы это был фрейм данных или что-то с четырьмя столбцами. Я ожидаю 24 значения в четырех столбцах. Теперь я получаю 96 значений в одном столбце.

user20050294 22.11.2022 16:33

Можете ли вы написать ожидаемый результат?

Ben 22.11.2022 17:01

Я отредактировал пост с иллюстрацией @Ben

user20050294 22.11.2022 17:32
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
4
198
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Пытаться:

import pandas as pd


def get_dataframe(num_cols=4, num_values=24):
    return pd.DataFrame(
        ([v * 24 + c for v in range(num_cols)] for c in range(num_values)),
        columns=[f"Column {c}" for c in range(1, num_cols + 1)],
    )


df = get_dataframe()
print(df)

Отпечатки:

    Column 1  Column 2  Column 3  Column 4
0          0        24        48        72
1          1        25        49        73
2          2        26        50        74
3          3        27        51        75
4          4        28        52        76
5          5        29        53        77
6          6        30        54        78
7          7        31        55        79
8          8        32        56        80
9          9        33        57        81
10        10        34        58        82
11        11        35        59        83
12        12        36        60        84
13        13        37        61        85
14        14        38        62        86
15        15        39        63        87
16        16        40        64        88
17        17        41        65        89
18        18        42        66        90
19        19        43        67        91
20        20        44        68        92
21        21        45        69        93
22        22        46        70        94
23        23        47        71        95

Другие вопросы по теме