我知道csv模块存在,但是对于我当前的项目,我们不允许使用该模块来调用csv文件。
我的代码如下;
table = []
for line in open("data.csv"):
data = line.split(",")
table.append(data)
transposed = [[table[j][i] for j in range(len(table))] for i in range(len(table[0]))]
rows = transposed[1][1:]
rows = [float(i) for i in rows]
我对python真的很陌生,所以这可能是一个非常基本的问题,我整天都在搜索互联网并努力寻找解决方案。我需要做的就是能够从任何单个列调用数据,以便我可以分析它。感谢
答案 0 :(得分:0)
您的数据按列表列表进行组织。每个子列表代表一行。为了更好地说明这一点,我会避免使用列表推导,因为它们更难以阅读。另外,我会避免使用像'i'和'j'这样的变量,而是使用更多描述性名称,如行或列。这是一个如何实现这个
的简单示例def read_csv():
table = []
with open("data.csv") as fileobj:
for line in fileobj.readlines():
data = line.strip().split(',')
table.append(data)
return table
def get_column_data(data, column_index):
column_data = []
for row in data:
cell_data = row[column_index]
column_data.append(cell_data)
return column_data
data = read_csv()
get_column_data(data, column_index=2) #example usage