我正在创建一个数据框,并希望删除其中不相关的条目。我希望删除非数字的值。
我使用以下代码创建了数据框 ( credit ):
import pandas as pd
import os
os.chdir('/pathdirectory/files')
csv_files = [f for f in os.listdir() if f.endswith('.csv')]
dfs = []
for csv in csv_files:
df = pd.read_csv(csv, header=None)
df = df.T
df.columns = ['DC energy', 'AC energy', 'Capacity factor', 'Inverter Loss']
dfs.append(df)
final_df = pd.concat(dfs, ignore_index=True)
final_df
它返回 this data frame 。显然我想从数据框中删除这些措辞,但我正在努力做到这一点。
非常感谢任何帮助。
最佳答案
您应该将 CSV 的第一列设置为索引:
pd.read_csv(csv, header=None, index_col=0)
或者:
cols = ['DC energy', 'AC energy', 'Capacity factor', 'Inverter Loss']
final_df = pd.concat([pd.read_csv(csv, header=None, index_col=0)
for csv in csv_files],
axis=1, ignore_index=True).T.set_axis(cols)
请注意,这假设所有文件都具有相同的列顺序。您也可以保留默认名称:
final_df = pd.concat([pd.read_csv(csv, header=None, index_col=0)
for csv in csv_files],
axis=1, ignore_index=True).T
关于python - 从 Pandas 数据框中删除不需要的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77088341/