[英]Retrieving columns from data frames which are dict items in python
我需要創建能夠讀取多個csv文件的代碼,在文件中查找具有共同標題的列,然后將它們提取到數組中。 我正在將以.csv文件作為數據幀導入的python字典填充,以便能夠在for循環中對其進行調用。 但是,我真的不知道從dict的每個項目中提取列的for循環是什么樣的。 到目前為止,這是我的代碼:
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
r= int(input('How many files do you want to plot?: '))
l= range(r)
d={}
for i in l:
inp= str(input('Type name of file #'+str(i+1)+': '))
d[i]= pd.read_csv(inp, sep=',') #fills dict with dataframes
print(d) ##prints dict to visually check for errors
然后,我需要命名要提取的列:
freq= input('Which frequency would you like to plot at?: ') ##The desired shared column (labeled by a common string) among the dataframes
在此之后,我被卡住了。 我只能考慮創建一個for循環,該循環遍歷每個dict項,“掃描”第一行以找到標題字符串,然后使用該列,但是我不知道如何編寫代碼。 有小費嗎???
給定一個數據pd.Series
d
的字典,您可以按如下所示從每個數據pd.Series
提取一列(或pd.Series
):
freq = input('Which frequency would you like to plot at?: ')
series = {k: v[freq] for k, v in d.items()}
這將創建一個名為freq
的列的字典。 接下來的操作不清楚您的問題。 您可能需要將它們串聯起來,或對所需的輸出執行一些計算。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.