如何在Python中从一个csv文件中获取两个数组?

2024-04-25 21:46:36 发布

您现在位置:Python中文网/ 问答频道 /正文


我有一个csv文件,其中包含如下行:

  • A、 x1型
  • A、 x2个
  • A、 x3型
  • B、 x4型
  • B、 x5型
  • B、 x6个

第一部分反映值(x1,x2,…)所属的组(A或B)。

我现在要做的是导入Python中的csv文件,所以最后有两个列表:

  • ListA=[x1,x2,x3]
  • 列表B=[x4,x5,x6]

有人能帮我吗?
提前感谢:)


Tags: 文件csv列表x1x2x3listax4
3条回答
import sys

file_path = "path_to_your_csv"

stream_in = open(file_path, 'rb')

A = [];
B = [];

for line in stream_in.readlines():
    add_to_List = line.split(",")[1].strip()

    if 'A' in line:
        A.append(add_to_List);
    if 'B' in line:
        B.append(add_to_List)
stream_in.close()
print A
print B

将数据放入pandas系列object names ser之后,只需输入ser.loc("A")ser.loc("B")以获取所需的数据片。你知道吗

为向量使用预先指定的名称会导致大量重复的逻辑,如果在数据描述中添加新的向量,这会变得越来越复杂。。。你知道吗

最好使用字典

data=[['a', 12.3], ['a', 12.4], ['b', 0.4], ['c', 1.2]]

vectors = {}  # an empty dictionary
for key, value in data:
     vectors.setdefault(key,[]).append(value)

相关文件,来自the python official documentation

setdefault(key[, default])

     If key is in the dictionary, return its value.
     If not, insert key with a value of default and return default.
     default defaults to None.

append(x)

     appends x to the end of the sequence (same as s[len(s):len(s)] = [x])

相关问题 更多 >

    热门问题