gpt4 book ai didi

python - 如何从多列中获取数据并将其保存在使用 Pandas 的列表中?

转载 作者:太空宇宙 更新时间:2023-11-04 02:45:42 26 4
gpt4 key购买 nike

我需要帮助才能将某些列中的数据放入列表中。

假设我有这个 test.txt 文件

30012    820202    999201
81910 882101 100291
88271 003300 221920
93929 719300

我想将偶数列和奇数列的数据保存在单独的列表中。

我尝试了以下但没有得到我想要的正确答案。

import pandas as pd

fileRead = pd.read_fwf("test.txt", delim_whitespace = True, header=None, dtype=object)

indx = 0
for indx in range(len(fileRead.columns)):
if indx % 2 == 1:
channel1 = fileRead[indx].tolist()

else:
channel0 = fileRead[indx].tolist()

print "CH0:" + channel0
print "CH1:" + channel1

这产生了

CH1: ['820202', '882101', '003300', '719300']
CH0: ['999201', '100291', '221920', nan]

我想要的结果是

CH1: ['820202', '882101', '003300', '719300']
CH0: ['30012','81910','88271','93929','999201', '100291', '221920', nan]

我在这个脚本中遗漏了什么?感谢您的帮助和建议。

最佳答案

您可以通过 valuesdf 转换为 arrays ,然后选择列并使用 numpy.ravel用于展平。最后调用 tolist:

a = df.values
ch0 = a[:, ::2].ravel().tolist()
ch1 = a[:, 1::2].ravel().tolist()
print (ch0)
['30012', '999201', '81910', '100291', '88271', '221920', '93929', nan]

print (ch1)
['820202', '882101', '003300', '719300']

关于python - 如何从多列中获取数据并将其保存在使用 Pandas 的列表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45207488/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com