Как найти сумму двух выбранных столбцов из большого файла данных?

1

У меня есть текстовый файл с столбцами "n" и многими строками. Как я могу использовать цикл for, чтобы найти сумму квадратных корней суммы квадратов, ряд за строкой, начиная с 1-го и "n/2-го" столбцов? Например, скажем, мой текстовый файл имеет 4 столбца и 3 строки и выглядит так:

    x11 x12 x13 x14
    x21 x22 x23 x24
    x31 x32 x33 x34

Я хочу найти:

    Sq( x11**2 + x13**2 )+Sq( x21**2 + x23**2 )+Sq( x31**2 + x33**2 )
    Sq( x12**2 + x14**2 )+Sq( x22**2 + x24**2 )+Sq( x32**2 + x34**2 )
  • 0
    Пожалуйста, включите фрагмент кода того, что вы пробовали.
  • 0
    Вы хотите возвести в квадрат числа обоих столбцов и найти сумму всех этих чисел из обоих столбцов?
Показать ещё 1 комментарий
Теги:
sum

1 ответ

0
Лучший ответ

Вы используете python. Затем вы можете использовать пакет pandas для обработки ваших данных.

import pandas as pd
import numpy as np

Преобразуйте файл в dataframe pandas.

df = pd.read_table('path_to_your_file', delimiter = " ", header=None)

Вы получите что-то вроде:

  | 0  1  2  3
--|------------
0 | x  x  x  x
1 | x  x  x  x
2 | x  x  x  x

Создать функцию

def create_new(df):
    new_row = 0
    mid = df.shape[1]//2
    for i in range(0, mid):
        new_row += np.sqrt(df[i]**2+df[i+mid]**2)
    return new_row

df['n+1'] = df.apply(create_new, axis=1)

Он создаст новый столбец с именем n+1 содержащий вычисление каждой строки.

  | 0  1  2  3  n+1
--|------------------
0 | x  x  x  x   y
1 | x  x  x  x   y
2 | x  x  x  x   y
  • 0
    Мои столбцы не имеют заголовка, поэтому мне нужно что-то вроде: col [1: n].
  • 0
    Я отредактировал свой пост и добавил больше деталей.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню