我有一个样本数据(Data_sample_truncated.txt
),我从一个大数据截断。它有3个字段-索引,时间和RxIn。密度[**x**,::]"
这里我使用x作为整数,因为x
可以在任何范围内变化。在这个数据中它是0-15
。3列字段的组合是唯一的。对于不同的"Index"
字段,"Time"和"RxIn"。密度[**x**,::]"
可以相同也可以不同。对于每个新的"Index"
值,数据都有一个空行
和几乎相似的列标题,除了"RxIn。密度[**x**,::]"
其中x
在达到新的"Index"
值时增加。我从ADS
(电路仿真软件)导出的数据在导出时给了我这样的格式。
现在我想格式化数据,以便将所有数据合并到3个唯一的列字段下—“Index”、“Time”和“RxIn.Density”
。您可以看到我想要删除第3列新数据框中的字符串[**x**,:::]
。下面是格式化后需要的最终数据文件示例(data-format\u I\u-want\u-after\u-formatting.txt
)。所以我想要下面的-
“RxIn.Density”
“Index”、“Time”和“RxIn.Density”
,即使数据值重复
我的MATLAB代码如下所示:
import pandas as pd
#create DataFrame from csv with columns f and v
df = pd.read_csv('Data_sample_truncated.txt', sep="\s+", names=['index','time','v'])
#boolean mask for identify columns of new df
m = df['v'].str.contains('RxIn')
#new column by replace NaNs by forward filling
df['g'] = df['v'].where(m).ffill()
#get original ordering for new columns
#cols = df['g'].unique()
#remove rows with same values in v and g columns
#df = df[df['v'] != df['g']]
df = df.drop_duplicates(subset=['index', 'time'], keep=False)
df.to_csv('target.txt', index=False, sep='\t')
生成的target.txt
文件不是我想要的。你可以在这里查看。有人能帮助我的代码出了什么问题,以及如何修复它,以便我想要我想要的格式吗?
我使用Spyder 3.2.6(蟒蛇)其中Python 3.6.4 64位嵌入。
试试这个:
df = pd.read_csv('Data_sample_truncated.txt', sep='\s+', names=['index', 'time', 'RxIn.Density', 'mask'], header=None)
df = df[df['mask'].isna()].drop(['mask'], axis=1)
df.to_csv('target.txt', index=False, sep='\t')
你可以过滤掉你不想要的行(检查一下):
import pandas as pd
df = pd.read_csv('Data_sample_truncated.txt', sep="\s+")
df.columns = ["index","time","RxIn.Density","1"]
del df["1"]
df = df[~df["RxIn.Density"].str.contains("Rx")].reset_index(drop=True)
df.to_csv('target.txt', index=False, sep='\t')
问题内容: 我有像这样的字符串“ aaaabbbccccaaddddcfggghhhh”,我想删除重复的字符,得到像这样的字符串“ abcadcfgh”。 一个简单的实现是: 使用正则表达式是否可能有更好的实现? 问题答案: 你可以这样做: 正则表达式使用反向引用和捕获组。 正常的正则表达式是,但是您必须在Java中使用另一个反斜杠来使反斜杠转义。 如果您想要重复的字符数: 演示版
我需要编写一个静态方法,该方法将作为参数,并返回一个新的。例如,如果我将“Maaaakkee”作为输入,它将返回“make”。我已经尝试了下面的代码,但它似乎没有显示最后一个字符。下面是我的代码:
问题内容: 我想从python中的字符串列表中删除所有空字符串。 我的想法如下: 有没有更多的Python方式可以做到这一点? 问题答案: 我会用: Python 3从返回一个迭代器,因此应包装在对的调用中
如果输入“abcde”和输入“abc”=“de” 我想知道如何使用jQuery创建代码。
本文向大家介绍如何从Python的字符串列表中删除空字符串?,包括了如何从Python的字符串列表中删除空字符串?的使用技巧和注意事项,需要的朋友参考一下 您可以使用过滤器过滤掉空字符串。filter的第一个参数是lambda,它将告诉您字符串是否为空。您可以将此lambda传递为None,bool,len或检查字符串是否为空的函数。您可以通过以下几种方式进行检查: 请单击下面的链接以查看带有简单
问题内容: 我正在制作一个基于Java中字符串处理的程序,其中需要从字符串数组中删除重复的字符串。在此程序中,所有字符串的大小均相同。 “数组”是一个字符串数组,其中包含许多字符串,其中两个字符串彼此相似。因此,使用下面的代码,必须删除重复的字符串,但是不能删除。 如何删除重复的字符串? 我正在使用以下代码。 问题答案: 这会工作 或者只使用a 而不是数组。