Python 3.x 从多个文件读取时元素之间的差异
我试图在读取多个csv文件后获得每个元素之间的差异。每个csv文件有13行128列。我试图得到列的差异 我使用Python 3.x 从多个文件读取时元素之间的差异,python-3.x,pandas,Python 3.x,Pandas,我试图在读取多个csv文件后获得每个元素之间的差异。每个csv文件有13行128列。我试图得到列的差异 我使用 data = [pd.read_csv(f, index_col=None, header=None) for f in _temp] 我得到了所有样品的清单 据我所知,我必须使用.diff()来获得差异。是这样的 data.diff() 这是可行的,但是我没有得到同一个样本中每一行之间的差异,而是得到了一个样本到另一个样本的每一行之间的差异 是否有一种方法将其分离,并让差异在每个
data = [pd.read_csv(f, index_col=None, header=None) for f in _temp]
我得到了所有样品的清单
据我所知,我必须使用.diff()
来获得差异。是这样的
data.diff()
这是可行的,但是我没有得到同一个样本中每一行之间的差异,而是得到了一个样本到另一个样本的每一行之间的差异
是否有一种方法将其分离,并让差异在每个样本中发生
编辑
通过这样做,我可以得到数据元素之间的差异
_local = pd.DataFrame(data)
_list = []
_a = _local.index
for _aa in _a:
_list.append(_local[0][_aa].diff())
flow = pd.DataFrame(_list, index=_a)
我创建的数据帧太多了,有更好的方法吗?这里有一种相对有效的方法,可以一次读取一个数据帧,并计算存储在列表中的差异
df_diff
df_diff = []
df_old = pd.read_csv(_temp[0], index_col=None)
for f in _temp[1:]:
df = pd.read_csv(f, index_col=None)
df_diff.append(df_old - df)
df_old = df
下面是一种相对有效的方法,可以一次读取一个数据帧,并计算它们之间的差异,这些差异存储在列表
df_diff
中
df_diff = []
df_old = pd.read_csv(_temp[0], index_col=None)
for f in _temp[1:]:
df = pd.read_csv(f, index_col=None)
df_diff.append(df_old - df)
df_old = df
既然你的代码是有效的,你就应该把它贴在上面 (另外,前面的“u”不是真正的pythonic。请避免。它会使代码更难阅读。)
既然你的代码是有效的,你就应该把它贴在上面 (另外,前面的“u”不是真正的pythonic。请避免。它会使代码更难阅读。)
在您阅读了
数据后,您能否给出一个关于数据的最小完整示例?请提供一个使用三个3x3数据帧的示例。如果我理解正确,您希望找到数据帧相邻列之间的差异。说column[1]-column[0]
elementwise等等?没错。但是有多个示例。在读入数据后,您能否给出数据的最小完整示例?请提供一个使用三个3x3数据帧的示例。如果我理解正确,您希望找到数据帧相邻列之间的差异。说column[1]-column[0]
elementwise等等?没错。但是有多个样本。df.shape的输出是什么。我首先要确保您正确读取文件。应该是(13128)。好的。df.shape的输出是什么。我首先要确保您正确读取文件。应该是(13128)。